书籍 代码精进之路的封面

代码精进之路PDF电子书下载

张建飞著

购买点数

10

出版社

北京:人民邮电出版社

出版时间

2019

ISBN

标注页数

232 页

PDF页数

258 页

标签

精进 代码

图书目录

第一部分 技艺 3

第1章 命名 3

1.1命名的力量 3

1.2命名其实很难 4

1.3有意义的命名 5

1.3.1变量名 5

1.3.2函数名 5

1.3.3类名 6

1.3.4包名 7

1.3.5模块名 7

1.4保持一致性 7

1.4.1每个概念一个词 8

1.4.2使用对仗词 8

1.4.3后置限定词 9

1.4.4统一业务语言 10

1.4.5统一技术语言 10

1.5自明的代码 10

1.5.1中间变量 11

1.5.2设计模式语言 11

1.5.3小心注释 12

1.6命名工具 14

1.7本章小结 15

第2章 规范 16

2.1认知成本 16

2.2混乱的代价 17

2.3代码规范 18

2.3.1代码格式 18

2.3.2空行规范 19

2.3.3 命名规范 21

2.3.4日志规范 22

2.3.5异常规范 25

2.4埋点规范 28

2.5架构规范 30

2.6 防止破窗 30

2.7本章小结 31

第3章 函数 32

3.1什么是函数 32

3.2软件中的函数 33

3.3封装判断 33

3.4函数参数 34

3.5短小的函数 35

3.6职责单一 36

3.7精简辅助代码 37

3.7.1优化判空 37

3.7.2优化缓存判断 38

3.7.3优雅降级 39

3.8组合函数模式 40

3.9 SLAP 43

3.10函数式编程 48

3.11本章小结 49

第4章 设计原则 51

4.1 SOLID概览 51

4.2 SRP 52

4.3 OCP 53

4.4 LSP 54

4.4.1警惕instanceof 55

4.4.2子类覆盖父类函数 55

4.5 ISP 57

4.6 DIP 58

4.7 DRY 61

4.8 YAGNI 61

4.9 Rule of Three 62

4.10 KISS原则 62

4.11 POLA原则 63

4.12本章小结 63

第5章 设计模式 64

5.1模式 64

5.2 GoF 65

5.3拦截器模式 69

5.4插件模式 73

5.5管道模式 75

5.5.1链式管道 75

5.5.2流处理 78

5.6本章小结 79

第6章 模型 81

6.1什么是模型 81

6.1.1物理模型 82

6.1.2数学模型 82

6.1.3概念模型 82

6.1.4思维模型 83

6.1.5模型不能代替现实 83

6.2 UML 84

6.3类图 85

6.3.1类的UML表示法 86

6.3.2类的关联关系 87

6.3.3类的依赖关系 92

6.3.4类的泛化关系 93

6.3.5接口与实现关系 94

6.4领域模型 95

6.5敏捷建模 96

6.6 广义模型 97

6.6.1 C4模型 97

6.6.2 UI流程图 97

6.6.3业务模型 98

6.7本章小结 99

第7章 DDD的精髓 101

7.1什么是DDD 101

7.2初步体验DDD 102

7.3 数据驱动和领域驱动 104

7.3.1数据驱动 104

7.3.2领域驱动 106

7.3.3 O R M 108

7.4 DDD的优势 109

7.4.1统一语言 110

7.4.2面向对象 110

7.4.3业务语义显性化 111

7.4.4分离业务逻辑和技术细节 111

7.5 DDD的核心概念 112

7.5.1领域实体 112

7.5.2聚合根 114

7.5.3领域服务 115

7.5.4领域事件 116

7.5.5 边界上下文 117

7.6领域建模方法 118

7.6.1用例分析法 118

7.6.2四色建模法 121

7.7模型演化 127

7.8为什么DDD饱受争议 127

7.8.1照搬概念 128

7.8.2抽象的灵活性 128

7.8.3领域层的边界 128

7.9本章小结 130

第二部分 思想 133

第8章 抽象 133

8.1伟大的抽象 133

8.2到底什么是抽象 134

8.3抽象是OO的基础 135

8.4抽象的层次性 136

8.5如何进行抽象 137

8.5.1寻找共性 137

8.5.2提升抽象层次 139

8.5.3构筑金字塔 142

8.6如何提升抽象思维 143

8.6.1多阅读 144

8.6.2多总结 144

8.6.3领域建模训练 145

8.7本章小结 145

第9章 分治 146

9.1分治算法 146

9.1.1归并排序 147

9.1.2二分搜索 148

9.1.3 K选择问题 149

9.2函数分解 150

9.3写代码的两次创造 150

9.3.1第一遍实现功能 150

9.3.2第二遍重构优化 151

9.4分治模式 151

9.5 分层设计 152

9.5.1分层网络模型 152

9.5.2分层架构 153

9.6 横切和竖切 154

9.7本章小结 155

第10章 技术人的素养 156

10.1不教条 156

10.1.1瀑布还是敏捷 157

10.1.2贫血还是充血 158

10.1.3单体还是分布式 159

10.2批判性思维 161

10.3成长型思维 162

10.4结构化思维 163

10.4.1如何落地新团队 165

10.4.2如何做晋升述职 166

10.5工具化思维 167

10.6好奇心 169

10.7记笔记 170

10.8有目标 171

10.9选择的自由 172

10.10平和的心态 173

10.11精进 174

10.12本章小结 174

第11章 技术Leader的修养 175

11.1技术氛围 175

11.1.1代码好坏味道 176

11.1.2技术分享 176

11.1.3 CR周报 177

11.1.4读书会 178

11.2目标管理 179

11.2.1什么是OKR 179

11.2.2 SMART原则 180

11.2.3 OKR设定 181

11.3技术规划 182

11.3.1当前问题 182

11.3.2技术领域 183

11.3.3业务领域 183

11.3.4团队特色 183

11.4推理阶梯 184

11.5 Leader和Manager的区别 185

11.6视人为人 186

11.7本章小结 187

第三部分 实践 191

第12章 COLA架构 191

12.1软件架构 191

12.2典型的应用架构 193

12.2.1分层架构 193

12.2.2 CQRS 195

12.2.3六边形架构 196

12.2.4 洋葱架构 198

12.2.5 DDD 199

12.3 COLA架构设计 200

12.3.1分层设计 200

12.3.2扩展设计 201

12.3.3规范设计 205

12.3.4 COLA Archetype 208

12.4 COLA测试 209

12.4.1单元测试 209

12.4.2集成测试 210

12.4.3 ColaMock 210

12.5 COLA架构总览 212

12.6本章小结 214

第13章 工匠平台 215

13.1项目背景 215

13.2整理需求 216

13.3工匠Demo 217

13.4使用COLA 218

13.4.1安装COLA 218

13.4.2搭建应用 218

13.5领域模型 219

13.5.1领域建模 219

13.5.2领域词汇表 221

13.6核心业务逻辑 222

13.7实现技术细节 227

13.7.1数据存储 227

13.7.2控制器 228

13.8测试 229

13.8.1单元测试 229

13.8.2集成测试 230

13.8.3回归测试 231

13.9 本章小结 232

查看更多关于的内容

本类热门
在线购买PDF电子书
下载此书RAR压缩包