驯服烂代码

驯服烂代码

出版信息

伍斌 / 机械工业出版社 / 2014-11 / 69.00

内容简介

Kent Beck、Martin Fowler、Michael C. Feathers、Robert C. Martin、Joshua Kerievsky、Gerard Meszaros等大师们的传世著作为如何提升编程技艺和代码质量提供了思想和原则上的指导,本书则为实践和融合这些思想、原则提供了过程和方法上指导。本书通过编程操练的方式讲述了如何用TDD(测试驱动开发)的方法来驯服烂代码,通过结对编程的对话形式展示了驯服烂代码的完整过程,将驯服烂代码所需要的思想、态度、习惯、方法和技艺完全融入编程操练实践中,是目前最具实践指导意义的驯服烂代码的著作。

全书共20章,分为四个部分:第一部分(第1~10章)首先通过测试后行和测试先行两种方法完成了一个名为“码农酒店”(世界时钟)的编程操练题目,然后对这两种方法进行对比,引出了烂代码的概念,读者能非常直观看出哪一种方法更容易写出烂代码。第二部分(第11~15章)通过一个名为Trivia(答题闯关游戏)的经典编程操练题目详细讲述了驯服一段烂代码的过程,首先讲解了代码腐臭的识别和记录,然后讲解了如何通过一系列的重构来清除这些腐臭。第三部分(第16~18章)通过三个编程操练题目详述了编写真正的单元测试的过程,首先讲解了用提取接口的办法编写Stub来进行单元测试,以及用子类化并覆写方法的办法编写Mock来进行单元测试,然后讲解了如何将被测类与文件系统之间的这种不适用于单元测试的耦合,转化为被测类与字符串之间这种适合与单元测试的耦合。第四部分(第19~20章)总结了驯服烂代码的步骤及方法,首先讲解了TDD开发方法的一种实现:I-EPP-TR方法,该方法中的全面重构的概念对传统的重构概念进行了扩展,然后讨论了如何才能将前面所讨论的良好的编程方法形成习惯并固化下来。

作者简介

伍斌(英文名Ben)

资深软件技术专家,匠艺程序员,拥有超过20年的软件行业工作经验,在软件开发、软件测试、敏捷项目管理和软件开发咨询等诸多方面都有深厚的造诣,专注于测试驱动开发、驯服烂代码及编程操练,积累了丰富的经验。

活跃于Agile China、Scrum Gathering、敏捷之旅、CSDN、中国软件测试大会和InfoQ等组织和社区,曾经多次在这些平台举办的各种技术大会上发表与敏捷、测试和驯服烂代码相关的主题演讲,深受欢迎。此外,他还是 “北京设计模式学习组”(http://www.bjdp.org)的组织者和开创者,这是国内首家中文公益编程操练社区,他全身心投入到社区的运营中,希望能帮到尽可能多的程序员。有《测试驱动数据库开发》和《优质代码》等译著。

目录

目  录

前言
致谢
第1章 刻舟求剑的文档 1
第2章 按图索骥地编写代码 7
第3章 写main()方法测试一下 17
第4章 调试一下 24
第5章 用TDD重做编程操练题目 33
第6章 消除假数据所带来的重复代码 40
第7章 让下一个测试足够有意思 46
第8章 嗅出代码“腐臭”和新的测试点 55
第9章 测试后行 vs 测试先行 64
第10章 何谓“烂代码” 68
第11章 记录所闻到的“腐臭” 75
第12章 用测试描绘用户意图 89
第13章 分而治之——釜底抽薪 105
第14章 分而治之——抛砖引玉 118
第15章 打扫战场 134
第16章 分而测之——编写Stub及提取接口 169
第17章 分而测之——编写Mock及子类化并覆写方法 191
第18章 真正的单元测试 217
第19章 驯服烂代码的步骤:IePpTr 232
第20章 习惯出自专注、长期和用心的结对操练 238
附录A 编程操练简介 244
附录B 怎样在Windows系统中搭建编程操练环境 246
附录C 怎样在OS X系统中搭建编程操练环境 251
附录D 怎样在Linux系统中搭建编程操练环境 256

本文地址:https://www.codercto.com/books/d/914.html

MD5 加密

MD5 加密

MD5 加密工具

XML、JSON 在线转换

XML、JSON 在线转换

在线XML、JSON转换工具

HSV CMYK 转换工具

HSV CMYK 转换工具

HSV CMYK互换工具