西西河

主题:【原创】闲聊敏捷编程——测试驱动开发(一) -- 代码ABC

共:💬55 🌺131
全看分页树展 · 主题 跟帖
家园 一开始的时候我也是这么想的

有很多原则需要动手实践之后多次对比才能领会到那些敏捷的意思。

敏捷反对过度设计,反对超前设计,但是不反对为了测试而进行设计,而且提倡这种设计。另外要注意测试驱动开发是每写一个测试就写一段实现,而不是将测试全部写出来再写代码。一方面降低设计难度,另一方面细化需求的发掘。也就是设计是逐步变化的。

重构的概念不是因为需求变化而修改程序,重构的意思是在不改变程序运行结果的前提下,修改和优化代码。象你举的例子那样的修改不是重构而是重新设计。重构在测试驱动开发中用来让代码能够灵活地适应新的需求变更,比如根据图像格式B的要求对代码进行修改后。再考虑如果再有新的图像格式怎么办,根据这个思路对代码的变更才是测试驱动中的代码重构。

这两个概念——设计和重构我还没想好怎么写。。。。

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河