本章讲述了一个记录保龄球得分的小程序的完成过程
作为一位未参加任何实际开发的学生来说,这章相当于带着我一步一步完整模拟了一遍开发过程。而且使用了一种测试驱动开发(TDD)的方法。
首先看到需求 : 能记录所有的比赛 记录每场比赛的成绩
然后去了解保龄球比赛的积分规则,主要是为了熟悉规则以便编码实现。
然后开始编写测试代码
从最简单的类设计开始,但是都是每次先写测试的相关类,将不同可能的得分情况写在一个个相应的方法中,然后去编写和完善能使测试类跑成功需要的方法主体,自己跟着做了一遍,虽然感觉这样很是繁琐,但是给我的感觉就是当我几乎所有的测试用例都能跑成功时,程序的大部分就完成了。剩下的就是代码的重构和一些局部细节的完善。
这里第一次使用java中的junit 还有相关工具的使用,也算是不小的收获。
之前学软件工程时就感觉书上单纯给你介绍一些思想方法,不去落地你根本很难体会,并且它容易遗忘。但这本书并没有,前五章讲述了敏捷开发的过程,其中在第四章也相应的介绍了测试驱动开发的好处,但是一直似懂非懂,直到这次亲身体会才感觉到:虽然编写测试文档和相应代码很是需要代价,但是带来的好处是维护,重构的便利。 正如作者在总结中说的:最好的设计是在你首先编写测试,一小步一小步逐渐形成的。