书籍详情
编程的原则:改善代码质量的101个方法
作者:[日] 上田勋 著,支鹏浩 译
出版社:人民邮电出版社
出版时间:2020-06-01
ISBN:9787115539144
定价:¥59.00
购买这本书可以去
内容简介
本书介绍了软件开发领域101个重要的编程原则,涉及编程中的永恒真理,指导方针,编程思想,程序员的视角、习惯和工具,以及编程的反模式等内容。书中以“这个原则是什么”“为什么要遵循这个原则”“具体应该怎么做”为中心,对各个原则进行介绍,简明扼要,通俗易懂。这些原则凝聚了前人的智慧,经过了历史的考验,是指导程序员改善代码、进一步提升编程能力的实用指南。本书适合各层次软件开发人员和项目管理人员阅读,也可作为高等院校计算机相关专业师生的参考读物。
作者简介
上田勋(作者)毕业于日本横滨国立大学经营学部。任职于Canon IT Solutions公司,从头参与了Web应用程序自动生成工具Web Performer的开发。在担任技术负责人、技术规范负责人、架构师和设计师的同时,自己也参与编程。喜欢读书,读过的技术书不少于800本,其运营的技术书读书博客上已有超过1500条博文。
目录
序章 本书导读
0.1 原则的分类. 2
0.2 介绍方式 4
0.3 编程术语在本书中的用法 6
0.4 注意事项. 8
第 1 章 前提 编程永恒的真理
1.1 编程没有银弹. 12
1.2 代码即设计书. 15
1.3 代码必然被修改 . 18
第 2 章 准则 编程的指导方针
2.1 KISS 原则 22
2.2 DRY 26
2.3 YAGNI 33
2.4 PIE. 36
2.5 SLAP 41
2.6 OCP 46
2.7 名字很重要 50
第 3 章 思想 编程的意识形态
3.1 编程理论 56
3.2 交流 60
3.3 简洁 62
3.4 灵活性. 64
3.5 效应局部化 66
3.6 重复最少化 68
3.7 逻辑与数据的一体化 .70
3.8 对称性 71
3.9 声明式表达 73
3.10 变动率 75
3.11 软件架构基本技法78
3.12 抽象 80
3.13 封装 . 82
3.14 信息隐藏 83
3.15 打包 85
3.16 关注点分离 87
3.17 充足性、完备性、原始性89
3.18 策略和实现的分离91
3.19 接口与实现的分离93
3.20 单一引用点 95
3.21 分治 98
3.22 软件架构的非功能需求.100
3.23 易变性104
3.24 互操作性.107
3.25 效率性109
3.26 可靠性111
3.27 可测试性.113
3.28 可复用性.115
3.29 七个设计原理118
3.30 简单性原理120
3.31 同构原理.121
3.32 对称原理.123
3.33 层次原理.125
3.34 线性原理.127
3.35 清晰原理.129
3.36 安全原理.131
3.37 UNIX 思想133
3.38 模块化原则135
3.39 清晰原则.136
3.40 组合原则.138
3.41 分离原则.140
3.42 简单原则.142
3.43 简约原则.144
3.44 透明性原则145
3.45 健壮性原则.147
3.46 表达性原则.149
3.47 最小意外原则150
3.48 沉默原则152
3.49 修复原则154
3.50 经济原则.156
3.51 生成原则158
3.52 优化原则159
3.53 多样性原则161
3.54 可扩展性原则162
3.55 UNIX 哲学164
3.56 小就是美.166
3.57 工作唯一169
3.58 尽早创建原型171
3.59 可移植性优先于效率 174
3.60 文本数据176
3.61 充分利用软件的杠杆效应178
3.62 活用 shell 脚本 .180
3.63 避开交互式用户接口 182
3.64 过滤器化.184
第 4 章 视角 程序员的视角
4.1 内聚度192
4.2 耦合度.199
4.3 正交性206
4.4 可逆性211
4.5 代码中的“坏味”.213
4.6 技术负债.216
第 5 章 习惯 程序员的日常
5.1 程序员的三大美德.222
5.2 童子军规则.226
5.3 性能调节的箴言 .229
5.4 无我编程235
5.5 一步一步走237
5.6 TMTOWTDI240
第 6 章 手法 程序员的工具箱
6.1 曳光弹.244
6.2 契约式设计249
6.3 防御性编程254
6.4 内部测试262
6.5 橡皮鸭调试法.264
6.6 语境 266
第 7 章 法则 编程的反模式
7.1 布鲁克斯法则280
7.2 康威定律285
7.3 破窗效应288
7.4 熵增原理291
7.5 80-10-10 原则 296
7.6 约书亚树原则.299
7.7 第二系统综合征 302
7.8 重新发明车轮.305
7.9 给牦牛剃毛309
后 记312
谢 辞315
0.1 原则的分类. 2
0.2 介绍方式 4
0.3 编程术语在本书中的用法 6
0.4 注意事项. 8
第 1 章 前提 编程永恒的真理
1.1 编程没有银弹. 12
1.2 代码即设计书. 15
1.3 代码必然被修改 . 18
第 2 章 准则 编程的指导方针
2.1 KISS 原则 22
2.2 DRY 26
2.3 YAGNI 33
2.4 PIE. 36
2.5 SLAP 41
2.6 OCP 46
2.7 名字很重要 50
第 3 章 思想 编程的意识形态
3.1 编程理论 56
3.2 交流 60
3.3 简洁 62
3.4 灵活性. 64
3.5 效应局部化 66
3.6 重复最少化 68
3.7 逻辑与数据的一体化 .70
3.8 对称性 71
3.9 声明式表达 73
3.10 变动率 75
3.11 软件架构基本技法78
3.12 抽象 80
3.13 封装 . 82
3.14 信息隐藏 83
3.15 打包 85
3.16 关注点分离 87
3.17 充足性、完备性、原始性89
3.18 策略和实现的分离91
3.19 接口与实现的分离93
3.20 单一引用点 95
3.21 分治 98
3.22 软件架构的非功能需求.100
3.23 易变性104
3.24 互操作性.107
3.25 效率性109
3.26 可靠性111
3.27 可测试性.113
3.28 可复用性.115
3.29 七个设计原理118
3.30 简单性原理120
3.31 同构原理.121
3.32 对称原理.123
3.33 层次原理.125
3.34 线性原理.127
3.35 清晰原理.129
3.36 安全原理.131
3.37 UNIX 思想133
3.38 模块化原则135
3.39 清晰原则.136
3.40 组合原则.138
3.41 分离原则.140
3.42 简单原则.142
3.43 简约原则.144
3.44 透明性原则145
3.45 健壮性原则.147
3.46 表达性原则.149
3.47 最小意外原则150
3.48 沉默原则152
3.49 修复原则154
3.50 经济原则.156
3.51 生成原则158
3.52 优化原则159
3.53 多样性原则161
3.54 可扩展性原则162
3.55 UNIX 哲学164
3.56 小就是美.166
3.57 工作唯一169
3.58 尽早创建原型171
3.59 可移植性优先于效率 174
3.60 文本数据176
3.61 充分利用软件的杠杆效应178
3.62 活用 shell 脚本 .180
3.63 避开交互式用户接口 182
3.64 过滤器化.184
第 4 章 视角 程序员的视角
4.1 内聚度192
4.2 耦合度.199
4.3 正交性206
4.4 可逆性211
4.5 代码中的“坏味”.213
4.6 技术负债.216
第 5 章 习惯 程序员的日常
5.1 程序员的三大美德.222
5.2 童子军规则.226
5.3 性能调节的箴言 .229
5.4 无我编程235
5.5 一步一步走237
5.6 TMTOWTDI240
第 6 章 手法 程序员的工具箱
6.1 曳光弹.244
6.2 契约式设计249
6.3 防御性编程254
6.4 内部测试262
6.5 橡皮鸭调试法.264
6.6 语境 266
第 7 章 法则 编程的反模式
7.1 布鲁克斯法则280
7.2 康威定律285
7.3 破窗效应288
7.4 熵增原理291
7.5 80-10-10 原则 296
7.6 约书亚树原则.299
7.7 第二系统综合征 302
7.8 重新发明车轮.305
7.9 给牦牛剃毛309
后 记312
谢 辞315
猜您喜欢