新書推薦:
《
双城史
》
售價:HK$
110.9
《
冯友兰和青年谈心系列:不是问题的问题(哲学大师冯友兰和年轻人谈心,命运解读)
》
售價:HK$
55.8
《
月与蟹(青鲤文库)荣获第144届直木奖,天才推理作家经典作品全新译本。一部青春狂想曲,带你登上心理悬疑之巅。
》
售價:HK$
50.4
《
索恩丛书·盛清统治下的太监与皇帝
》
售價:HK$
88.5
《
透过器物看历史(全6册)
》
售價:HK$
490.6
《
我在台北故宫博物院读名画
》
售價:HK$
109.8
《
尼罗河往事:古埃及文明4000年
》
售價:HK$
76.2
《
一个人·谁也不是·十万人(诺贝尔文学奖得主反思自我的巅峰之作)
》
售價:HK$
54.9
|
編輯推薦: |
开发者的水平需要靠代码来证明。无论你用的是哪种编程语言,都应该写出干净、优雅且整齐的代码。测试驱动开发(TDD)可以帮助你写出这种既易懂又漂亮的代码,这样的代码能够在以后的几个月乃至几年中稳定运行。在这本开发者必备的教程中,你能够学到如何用Go、JavaScript以及Python这三种语言来做测试驱动开发。 Saleem Siddiqui在书中会告诉你如何用单元测试引领开发工作,以解决业务领域中的复杂问题。这种测试驱动的编程方式会把需求划分成多个比较小的功能,并分别予以实现。无论使用哪种编程语言与编程框架,你都可以把本书中的知识运用到日常的编程工作中。 通过本书,你将学到: ● 如何用TDD把业务领域中的复杂问题划分成多个小功能,并分别予以实现。 ● 如何在各种编程语言中用各种测试框架来做TDD,以实现业务领域中的概念。 ● 如何通过TDD推进持续集成(CI)。 ● 如何通过TDD做重构与重新设计。 ● 如何用JavaScript代码编写一套简单而有效的测试用具,以便自动识别并运行单元测试。 ● 如何配置一套持续集成环境,以自动测试TDD中的单元测试。 ● 如何以TDD的方式写出
|
內容簡介: |
开发者的水平需要靠代码来证明。无论你用的是哪种编程语言,都应该写出干净、优雅且整齐的代码。测试驱动开发(TDD)可以帮助你写出这种既易懂又漂亮的代码,这样的代码能够在以后的几个月乃至几年中稳定运行。在这本开发者必备的教程中,你能够学到如何用Go、JavaScript以及Python这三种语言来做测试驱动开发。Saleem Siddiqui在书中会告诉你如何用单元测试引领开发工作,以解决业务领域中的复杂问题。这种测试驱动的编程方式会把需求划分成多个比较小的功能,并分别予以实现。无论使用哪种编程语言与编程框架,你都可以把本书中的知识运用到日常的编程工作中。通过本书,你将学到:* 如何用TDD把业务领域中的复杂问题划分成多个小功能,并分别予以实现。* 如何在各类编程语言中用各种测试框架来做TDD,以实现业务领域中的概念。* 如何通过TDD推进持续集成(CI)。* 如何通过TDD做重构与重新设计。* 如何用JavaScript编写一套简单而有效的测试用具,以便自动识别并运行单元测试。* 如何配置一套持续集成环境,以自动测试在做TDD的过程中所写的单元测试。* 如何以TDD的方式写出清晰而整齐的Go、JavaScript及Python代码。
|
關於作者: |
Saleem Siddiqui是一位软件开发者,他也参与培训、演讲和写作。他具有丰富的技术开发经验,在大大小小的团队中开发过医疗、零售、政务、财务以及制药等方面的软件。Saleem将在本书中分享自己过去的经验与教训,帮助大家避开他以前编写软件时犯的错误。
|
目錄:
|
目录序1前言3第0章 简述如何配置开发环境210.1 配置开发环境210.2 小结28第一部分 入门第1章 我们要解决的问题:Money311.1 TDD 的基本流程:红-绿-重构循环311.2 我们要解决的是什么问题321.3 第一个失败的测试331.4 让测试通过371.5 清理代码411.6 提交变更441.7 小结45第2章 通过Money实体支持多种货币482.1 开始支持欧元482.2 让代码遵循DRY原则502.3 刚才不是说要遵循 DRY 原则吗?现在为什么要保留两个相似的测试522.4 分而治之(实现除法)532.5 清理代码572.6 提交变更602.7 小结60第3章 通过Portfolio实体支持投资组合623.1 设计下一个测试623.2 提交变更713.3 小结71第二部分 模块化第4章 关注点分离754.1 测试代码与产品代码754.2 模块化784.3 去除冗余(消除重复)794.4 小结80第5章 Go语言的包与模块815.1 把代码分割到不同的包中815.2 Go 语言的模块825.3 创建新包845.4 封装865.5 消除测试中的重复885.6 提交变更885.7 小结88第6章 JavaScript的模块906.1 把代码划分成多个模块906.2 认识 JavaScript 模块926.3 改进测试966.4 提交变更1046.5 小结105第7章 Python的模块1067.1 把代码划分成多个模块1067.2 消除测试中的重复1087.3 提交变更1087.4 小结108第三部分 功能与重新设计第8章 求Portfolio的值1118.1 处理币种不同的Money1118.2 提交变更1198.3 小结119第9章 这种钱,那种钱1209.1 制作映射表以便查询汇率1209.2 提交变更1279.3 小结128第10章 错误处理12910.1 我们想把错误处理机制实现成什么样子12910.2 提交变更14110.3 小结142第11章 通过Bank实体重新设计14311.1 依赖注入14411.2 把所有实体汇聚起来14511.3 提交变更16611.4 小结166第四部分 收尾第12章 掌握测试顺序17112.1 修改汇率17212.2 提交变更18012.3 小结181第13章 持续集成18213.1 核心概念18313.2 把实现持续集成所需的步骤串起来18713.3 提交变更19813.4 小结203第14章 回顾20414.1 代码是否具备良好的形象20514.2 代码是否确切地实现了目标20814.3 在编写代码的过程中有没有其他路可走21014.4 从三个维度分析代码21114.5 TDD 过时了吗22414.6 全书总结226附录 A 配置开发环境227附录B 三种语言简史237附录C 致谢244
|
|