修改代码的艺术
内容简介:
我们都知道,即使是最训练有素的开发团队,也不能保证始终编写出清晰高效的代码。如果不积极地修改、挽救,随着时间流逝,所有软件都会不可避免地渐渐变得复杂、难以理解,最终腐化、变质。因此,理解并修改已经编写好的代码,是每一位程序员每天都要面对的工作,也是开发程序新特性的基础。然而,与开发新代码相比,修改代码更加令人生畏,而且长期以来缺乏文献和资料可供参考。
本书是继《重构》和《重构与模式》之后探讨修改代码技术的又一里程碑式的著作,而且从涵盖面和深度上都超过了前两部经典。书中不仅讲述面向对象语言(Java、C#和C++)代码,也有专章讨论C这样的过程式语言。作者将理解、测试和修改代码的原理、技术和最新工具(自动化重构工具、单元测试框架、仿对象、集成测试框架等),与解依赖技术和大量开发和设计优秀代码的原则、最佳实践相结合,许多内容非常深入,而且常常发前人所未发。书中处处体现出作者独到的洞察力,以及多年开发和指导软件项目所积累的丰富经验和深厚功力。通过这部集大成之作,你不仅能掌握最顶尖的修改代码技术,还可以大大提高对代码和软件开发的领悟力。
作者简介:
Michael Feathers世界级面向对象技术专家,以丰富的软件项目开发经验著称。目前在世界顶尖的软件咨询公司Object Mentor从事敏捷方法,极限编程、测试驱动开发、重构、面向对象设计、Java、c#和c++等方面的培训和项目指导。他是著名测试框架CppUnit和FitCpp的开发者,已经主持了三次面向对象界盛会OOPSLA上的CodeFest比赛。
目录:
第一部分 修改机理
第1章 修改软件
第2章 带着反馈工作
第3章 感知和分离
第4章 接缝模型
第5章 工具
第1章 修改软件
第2章 带着反馈工作
第3章 感知和分离
第4章 接缝模型
第5章 工具
第二部分 修改代码的技术
第6章 时间紧迫、但必须修改
第7章 漫长的修改
第8章 添加特性
第9章 无法将类放入测试用具中
第10章 无法在测试用具中运行方法
第11章 修改时应当测试哪些方法
第12章 在同一地进行多处测试、是否应该将相关的所有类都解依赖
第13章 修改时应该怎样写测试
第14章 棘手的库依赖问题
第15章 到处都是API调用
第16章 对代码的理解不足
第17章 应用毫无结构可言
第18章 测试代码碍手碍脚
第19章 对非面向对象的项目、如何安全地对它进行修改
第20章 处理大类
第21章 需要修改大量相同的代码
第22章 要修改一个巨型方法,却没法为它编写测试
第23章 降低修改的风险
第24章 当你感到绝望明
第三部分 解依赖技术
第24章 解依赖技术
附录 重构
术语表
索引
订阅评论
登录
请登录后发表评论
0 评论