测试驱动开发
来源:互联网 发布:如何在淘宝上开好网店 编辑:程序博客网 时间:2024/05/18 12:38
我感觉自己现在就像是现代社会的农民工,唯一能做的就是搬砖。但是砌墙的工作都不会给我这种只会搬砖的小工来做,更别提设计一栋大楼,盖起一堵墙了。在做软件中,缺乏思考真的是一件悲哀的事情。我就感觉自己有点画地为牢了,总是以为代码的世界就是一堆堆砖块罗列起来的。现在我在提高班百无聊赖时就觉得人丑就要多读书,不断阅读关于软件设计和代码质量的书籍。善于站在巨人肩膀上,在书本上听取江湖老前辈的谆谆教诲。这些书本给我思想上带来了新的感受和认识。
模块的设计是战略上的,而模块内接口的设计是战术上的,至于接口的实现,只能是小工来搬砖的工作了。(虽然小工的水平差异也是巨大的)我个人理解这个观点就像我们的电脑一样,战略上我们要先设计主板分哪些区,干什么用,如何交互。主板上的模块划分好后,剩下的战术问题就是如何对外提供接口了。如果接口也都设计好了,那么我们直接告诉第三方商家针对我们的接口做出实现。因为有了接口,我们关于实现可以分工非常细微,有利于编写出高质量的小型部件。
这里我不是主要讨论如何设计代码,本文我主要想阐述一下我对如何砌墙的理解。首先,建筑工地里,大工先用一根线水平放在一个墙基上,从而由小工搬砖来砌墙,这样有了一个基准就可以保证墙是笔直的。测试驱动开发,强调编码实现都必须要在控制之内,所以测试先行的概念就非常新。我们传统的开发都是“设计”-“编码”-“测试”,而测试驱动开发颠覆了我们的认识,它的顺序是“测试”-“编码”-“重构”。
这种小步测试的开发保证了我们编码的正确性,虽然没有实践过这种开发模型。但是我被书中介绍的思想深深吸引,现在才意识到自己以前的开发效率其实是很低的。在学习前人这些思想的同时,我感觉自己又提高了一个高度来思考所处的软件开发的到底是什么。不同阶段对软件开发的本质有不同的理解。
- 读书笔记《测试驱动开发》
- 关于测试驱动开发
- 【杂谈】测试驱动开发
- 读书笔记《测试驱动开发》
- 感悟测试驱动开发
- 测试驱动开发
- 测试驱动开发全功略
- 感悟测试驱动开发
- 测试驱动开发全功略
- 测试驱动开发全功略
- 读《测试驱动开发》
- 测试驱动开发指南
- 测试驱动开发全功略
- 测试驱动开发全功略
- 测试驱动开发
- 测试驱动开发
- 感悟测试驱动开发
- 实践测试驱动开发
- 手机开发实战150——JPEG介绍1
- 虚拟世界和现实世界的未来
- JSP标签库JSTL
- cocos2dx[3.2](2) ——浅析cocos2dx3.2引擎目录
- 手机开发实战151——JPEG介绍2
- 测试驱动开发
- swift 点击空白键盘下去
- 三个水杯-简单bfs
- poj 2367 前向星+拓扑排序
- Ubuntu 下安装 Google Chrome
- 手机开发实战152——JPEG介绍3
- PX DPI PPI等概念
- 某NOIP模拟考试——2016.06.12
- 手机开发实战153——GIF介绍1