Robert C.Martin是Object Mentor公司的总裁。Martin和他的软件咨询队伍使用面向对象设计、模式、UML、敏捷方法学和极限编程,在世界各地都有他们的客户。他还是好几本畅销书的作者。他还是1996-1999年《C Report》杂志的总编,并多次在国际会议和展览中发表富有特色的演讲。
第Ⅰ部分 敏捷开发
及时章 敏捷实践
1.1 敏捷联盟
1.2 原则
1.3 结论
参考文献
第二章 极限编程概述
2.1 极限编程实践
2.2 结论
参考文献
第三章 计划
3.1 初始探索
3.2 计划
3.3 迭代计划
3.4 任务计划
3.5 迭代
3.6 结论
参考文献
第四章 测试
4.1 测试驱动的开发方法
4.2 验收测试
4.3 结论
参考文献
第五章 重构
5.1 素数产生程序一个简单的重构示例
5.2 结论
参考文献
第六章 一次编程实践
6.1 保龄球比赛
6.2 结论
第Ⅱ部分 敏捷设计
第七章 什么是敏捷设计
7.1 软件出了什么错
7.2 设计的臭味——腐化软件的气味
7.3 “Copy”程序
7.4 保持尽可能好的设计
7.5 结论
参考文献
第八章 单一责任原则(SRP)
8.1 单一职责原则(SRP)
8.2 结论
参考文献
第九章 开放—封闭原则(OCP)
9.1 开放—封闭原则(OCP)
9.2 描述
9.3 关键是抽象
9.4 结论
参考文献
第十章 Liskov替换原则(LSP)
10.1 Liskov替换原则(LSP)
10.2 一个违反LSP的简单例子
10.3 正方形和矩形,更微妙的违规
10.4 一个实际的例子
10.5 用提取公共部分的方法代替继承
10.6 启发式规则和习惯用法
10.7 结论
参考文献
第十一章 依赖倒置原则(DIP)
11.1 依赖倒置原则(DIP)
11.2 层次化
11.3 一个简单的例子
11.4 熔炉示例
11.5 结论
参考文献
第十二章 接口隔离原则(ISP)
12.1 接口污染
12.2 分离客户就是分离接口
12.3 接口隔离原则(ISP)
12.4 类接口与对象接口
12.5 ATM用户界面的例子
12.6 结论
参考文献
第Ⅲ部分 薪水支付案例研究
第十三章 COMMAND模式和ACTIVE OBJECT模式
第十四章 TEMPLATE METHOD模式和STRATEGY模式:继承与委托
第十五章 FACADE模式和MEDIATOR模式
第十六章 SINGLETON模式和MONOSTATE模式
第十七章 NULL OBJECT模式
第十八章 薪水支付案例研究:及时次迭代开始
第十九章 薪水支付案例研究:实现
第Ⅳ部分 打包薪水支付系统
第二十章 包的设计原则
第二十一章 FACTORY模式
第二十二章 薪水支付案例研究(第2部分)
第Ⅴ部分 气象站案例研究
第二十三章 COMPOSITE模式
第二十四章 OBSERVER模式——回归为模式
第二十五章 ABSTRACT SERVER模式、ADAPTER模式和BRIDGE模式
第二十六章 PROXY模式和STAIRWAY TO HEAVEN模式:管理第三方API
第二十七章 案例研究:气象站
第Ⅵ部分 ETS案例研究
第二十八章 VISITOR模式
第二十九章 STATE模式
第三十章 ETS框架
附录
附录A UML表示法Ⅰ:CGI示例
附录B UML表示法Ⅱ:统计多路复用器
附录C 两个公司的讽刺小品
附录D 源代码就是设计
索引
7.2 设计的臭味——腐化软件的气味
当软件出现下面任何一种气味时,就表明软件正在腐化。
僵化性(Rigidity):很难对系统进行改动,因为每个改动都会迫使许多对系统其他部分的其他改动。
脆弱性(Fragility):对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。
牢固性(Immobility):很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。
粘滞性(Viscosity):做正确的事情比做错误的事情要困难。
不必要的复杂性(Needless Complexity):设计中包含有不具任何直接好处的基础结构。
不必要的重复(Needless Repetition):设计中包含有重复的结构,而该重复的结构本可以使用单一的抽象进行统
很好的描述了敏捷开发,适合愿意了解敏捷开发的人阅读
北京同学推荐的书,觉得还不错的。专业书籍,经典
学习编程必读之书. 太经典了, 就不用再多说什么了.
公司实施敏捷开发快三年多了,结合实际项目看这本书,感觉收获很大
内容不错,性价比高,可以对敏捷开发有较好的理解
对大家了解敏捷的初衷起到很大帮助,但是敏捷近些年也出现太多分支,不管怎么样这本书还是基础之作。
本次因没有纸箱在外边保护书籍,仅有纸袋,有的书潮湿了,想换又嫌麻烦。真的很不开心。
很不错的书,适合对软件设计模式,uml,软件重构,测试等知识有一定基础,但经验较少的人学习。对于面向对象的基础原则的解释深入潜浅出,非常透彻。远非很多国内的照抄概念的骗钱书可比。非常推荐!
这本书最先是一个资深的开发同事推荐的,借着看完了,讲解透彻、简单易懂,不失为一本开发人员常备的书籍,书中的一些原则思想灵活多变,多看看,能极大提高自己的能力,因为觉得真不错,所以干脆买了一本。
包装不错,纸质也挺好,就是系统有点坑,显示的电话居然是空号,物流也真坑,到了两天才配送,有快递柜不放,直接扔门口,也没电话说一声,别人拿走了都不知道。。。
本书对敏捷开发和设计模式有比较不错的讲解,其中对敏捷开发讲的还算详细,但后来对各个设计模式的讲解只是一带而过的感觉,学习设计模式的初学者推荐"大话设计模式"
一本把设计模式、敏捷开发、面向对象很好融合在一起的好书,建议有基础再去看这本书,要是深刻理解书中内容,需要相关的项目经验。
这本书真的是太好了,更好的翻译也很不错,很难得的国内游这么强的翻译了。大师的作品确实经典,对面向对象的理解会更加深刻。把平时的实现上升到理论的高度,然后根据对理论的深入的立即,去指导实践,我相信你的编程能力会飞速发展。
值得多次阅读的书籍,书中许多实例与开发模式相结合,能够在日常工作中得到很好的应用。另外本书推崇的迭代开发,少量多次的提交,以及重视客户反馈都是具有建设性意见。目前我所在公司正在推广迭代开发模式,所以重读此书,收获不少。
敏捷软件开发——原则、模式与实践捷实践第二章极限编程概述第R三章计划第四章测试第五章重构第六章一次编程实践第Ⅱ部分敏捷设计第七章什6么是程方面
几年前我就想买一本关于软件工程的书,可是书店里的书鱼目混杂让人眼花潦乱,尢其对于初学者来说更是难分精劣,所以也上过很多回当啊,一般的书千篇一律,基本上就是copy真不知道写书者的脑子里边除了金钱还有没有别的东西了。后来总结出了一条买书的秘籍就是看到一本主你心动的书时,先不要冲动哦,先网上查查关于该书的评价,网友的评价都是纯洁的啊,,比如这本书绝对是一本好书,对于软件开发人员绝对是超值的..刚拿到书时直是有相见恨晚的感觉,希望业界大师们不要吝惜笔墨多多出些经典,造福软件行业...