出版社:人民邮电出版社
年代:2008
定价:29.0
在本书中,Kent Beck将自己多年形成的编程习惯以及阅读既有代码的体验凝练成了编程中的价值观、原则和77种实现模式。沟通、简单和灵活的价值观应当被所有开发人员所铭记,无时或忘。局部影响、最小化重复、将逻辑与数据捆绑等原则同样是通用性的指导思想,比价值观更贴近编程场景,在价值观和模式之间搭建了桥梁。在77个实现模式中,每一个模式都覆盖了编写简洁、清晰、易扩展、易维护的代码这一原则的某个方面。它们为日常的编程提供了丰富翔实的参考依据,并告诉大家这些代码如何为降低沟通成本和提高有效产出提供保障。
第1章引言1
1.1导游图4
1.2那么,现在……5
第2章模式7
第3章一种编程理论11
3.1价值观12
3.1.1沟通12
3.1.2简单13
3.1.3灵活15
3.2原则16
3.2.1局部化影响16
3.2.2最小化重复16
3.2.3将逻辑与数据捆绑17
3.2.4对称性18
3.2.5声明式表达19
3.2.6变化率20
3.3小结21
第4章动机23
第5章类27
5.1类28
5.2简单的超类名29
5.3限定性的子类名30
5.4抽象接口31
5.5interface33
5.6抽象类34
5.7有版本的interface35
5.8值对象36
5.9特化39
5.10子类40
5.11实现器42
5.12内部类43
5.13实例特有的行为44
5.14条件语句45
5.15委派47
5.16可插拔的选择器50
5.17匿名内部类51
5.18库类52
5.19小结53
第6章状态55
6.1状态56
6.2访问57
6.3直接访问58
6.4间接访问59
6.5通用状态60
6.6可变状态61
6.7外生状态63
6.8变量63
6.9局部变量65
6.10字段66
6.11参数68
6.12收集参数69
6.13可选参数70
6.14变长参数71
6.15参数对象72
6.16常量73
6.17按角色命名74
6.18声明时的类型75
6.19初始化76
6.20及早初始化77
6.21延迟初始化78
6.22小结78
第7章行为79
7.1控制流80
7.2主体流80
7.3消息81
7.4选择性消息82
7.5双重分发82
7.6分解性(序列性)消息84
7.7反置性消息84
7.8邀请性消息86
7.9解释性消息86
7.10异常流87
7.11卫述句88
7.12异常90
7.13已检查异常91
7.14异常传播91
7.15小结92
第8章方法93
8.1组合方法96
8.2揭示意图的名称97
8.3方法可见性98
8.4方法对象100
8.5覆盖方法102
8.6重载方法103
8.7方法返回类型103
8.8方法注释104
8.9助手方法105
8.10调试输出方法106
8.11转换107
8.12转换方法107
8.13转换构造器108
8.14创建109
8.15完整的构造器110
8.16工厂方法111
8.17内部工厂111
8.18容器访问器方法112
8.19布尔值Setting方法114
8.20查询方法115
8.21相等性判断方法116
8.22Getting方法117
8.23Setting方法118
8.24安全副本120
8.25小结121
第9章容器123
9.1隐喻124
9.2要点125
9.3接口127
9.3.1Array国127
9.3.2Iterable国128
9.3.3Collection国128
9.3.4List国129
9.3.5Set国129
9.3.6SortedSet国130
9.3.7Map国131
9.4实现131
9.4.1Collection国132
9.4.2List国133
9.4.3Set国134
9.4.4Map国135
9.5Collections135
9.5.1查询136
9.5.2排序136
9.5.3不可修改的容器137
9.5.4单元素容器138
9.5.5空容器138
9.6继承容器139
9.7小结140
第10章改进框架141
10.1修改框架而不修改应用141
10.2不兼容的更新143
10.3鼓励可兼容的变化144
10.3.1程序库类145
10.3.2对象146
10.4小结155
附录A性能度量157
A.1示例158
A.2API158
A.3实现160
A.4MethodTimer160
A.5冲抵额外开销163
A.6测试164
A.6.1容器的比较164
A.6.2ArrayList和LinkedList的比较167
A.6.3Set之间的比较169
A.6.4Map之间的比较170
A.7小结172
参考书目173
这是一本关于编程的书,更具体一点,是关于“如何编写别人能懂的代码”的书。Java提供了一些很好的交流机制,本书介绍的实现模式正是一些Java编程习惯,它们能让你编写出的代码更加易读。它不是编程风格指南,因为其中包含了太多的解释,最终的决定权则完全交给你。它不是设计书籍,因为其中关注的主要是小范围的、程序员每天要做的很多次决策。它不是模式书籍,不是语言书籍,说到底,这是一本关于责任的书。 在本书中,作者将自己多年形成的编程习惯以及阅读既有代码的体验凝练成了编程中的价值观、原则和77种实现模式。 沟通、简单和灵活的价值观应当被所有开发人员所铭记。局部影响、最小化重复、将逻辑与数据捆绑等原则同样是通用性的指导思想,比价值观更贴近编程场景,在价值观和模式之间搭建了桥梁。在77种实现模式中,每一种模式都覆盖了编写简洁、清晰、易扩展、易维护的代码这一原则的某个方面。它们为日常的编程提供了丰富翔实的参考依据,并告诉大家这些代码如何为降低沟通成本和提高有效产出提供保障。 本书适用于各个阶段的开发者群体。刚刚涉足软件开发领域的新人能够透过大师的眼睛来看待编程,了解编程的价值观与原则;具有丰富经验的资深工程师则可以通过这些模式进行反思,探究成功实践背后的意义。把价值观、原则和开发实践结合之后,日常开发工作便会以崭新迷人的形式呈现在我们面前。
(美) 贝克 (Beck,K.) , 著
(美) 贝克 (Beck,K.) , 著
(美) 科瑞夫斯盖, 著
(美) 威利斯迪斯 (Vlissides,J.) , 著
(美) 泰德维尔 (Tidwell,J.) , 著
(美) 维利斯德斯 (Vlissides,J.M.) , (美) 科普林 (Coplien,J.O.) , (美) 科兹 (Kerth,N.L.) , 编
(美) 科普林 (Coplien,J.O.) , (美) 施密特 (Schmidt,D.C.) , 编
王红卫, 等编著
(美) 马丁 (Martin,R.) , (美) 里尔 (Riehle,D.) , (美) 布希曼 (Buschmann,F.) , 著