![]()
内容推荐 开发者的水平需要靠代码来证明。无论你用的是哪种编程语言,都应该写出干净、优雅且整齐的代码。测试驱动开发(TDD)可以帮助你写出这种既易懂又漂亮的代码,这样的代码能够在以后的几个月乃至几年中稳定运行。在这本开发者必备的教程中,你能够学到如何用Go、JavaScript以及Python这三种语言来做测试驱动开发。 Saleem Siddiqui在书中会告诉你如何用单元测试引领开发工作,以解决业务领域中的复杂问题。这种测试驱动的编程方式会把需求划分成多个比较小的功能,并分别予以实现。无论使用哪种编程语言与编程框架,你都可以把本书中的知识运用到日常的编程工作中。 作者简介 萨利姆·西迪基,是一位软件开发者,他也参与培训、演讲和写作。他具有丰富的技术开发经验,在大大小小的团队中开发过医疗、零售、政务、财务以及制药等方面的软件。Saleem将在本书中分享自己过去的经验与教训,帮助大家避开他以前编写软件时犯的错误。 目录 序 前言 第0章 简述如何配置开发环境 0.1 配置开发环境 0.2 小结 第一部分 入门 第1章 我们要解决的问题:Money 1.1 TDD的基本流程:红-绿-重构循环 1.2 我们要解决的是什么问题 1.3 第一个失败的测试 1.4 让测试通过 1.5 清理代码 1.6 提交变更 1.7 小结 第2章 通过Money实体支持多种货币 2.1 开始支持欧元 2.2 让代码遵循DRY原则 2.3 刚才不是说要遵循DRY原则吗?现在为什么要保留两个相似的测试 2.4 分而治之(实现除法) 2.5 清理代码 2.6 提交变更 2.7 小结 第3章 通过Portfolio实体支持投资组合 3.1 设计下一个测试 3.2 提交变更 3.3 小结 第二部分 模块化 第4章 关注点分离 4.1 测试代码与产品代码 4.2 模块化 4.3 去除冗余(消除重复) 4.4 小结 第5章 Go语言的包与模块 5.1 把代码分割到不同的包中 5.2 Go语言的模块 5.3 创建新包 5.4 封装 5.5 消除测试中的重复 5.6 提交变更 5.7 小结 第6章 JavaScript的模块 6.1 把代码划分成多个模块 6.2 认识JavaScript模块 6.3 改进测试 6.4 提交变更 6.5 小结 第7章 Python的模块 7.1 把代码划分成多个模块 7.2 消除测试中的重复 7.3 提交变更 7.4 小结 第三部分 功能与重新设计 第8章 求Portfolio的值 8.1 处理币种不同的Money 8.2 提交变更 8.3 小结 第9章 这种钱,那种钱 9.1 制作映射表以便查询汇率 9.2 提交变更 9.3 小结 第10章 错误处理 10.1 我们想把错误处理机制实现成什么样子 10.2 提交变更 10.3 小结 第11章 通过Bank实体重新设计 11.1 依赖注入 11.2 把所有实体汇聚起来 11.3 提交变更 11.4 小结 第四部分 收尾 第12章 掌握测试顺序 12.1 修改汇率 12.2 提交变更 12.3 小结 第13章 持续集成 13.1 核心概念 13.2 把实现持续集成所需的步骤串起来 13.3 提交变更 13.4 小结 第14章 回顾 14.1 代码是否具备良好的形象 14.2 代码是否确切地实现了目标 14.3 在编写代码的过程中有没有其他路可走 14.4 从三个维度分析代码 14.5 TDD过时了吗 14.6 全书总结 附录A 配置开发环境 附录B 三种语言简史 附录C 致谢 |