北京设计模式学习组bjdp.org第9次活动(2013.09.15)纪要

时间:2013.09.15,6-9pm

地点:北京中关村车库咖啡

参加人数:7人

活动要点:

1)伍斌分享“用BDD实现编码的可视化快速反馈”。通过酒店世界时钟的招式的代码,比较传统TDD与3种ATDD(FitNesse, Cucumber与RobotFramework)的异同。具体代码详见:https://github.com/wubin28/Kata-Hotel-World-Clocks

2)软件开发中最头痛的问题:

a)做的功能用户不需要;b)Bug很多;c)如何完美实现软件;d)如何应付软件交付时间短的挑战;e)开发环境的配置;f)需求变更与影响性分析。

3)二奎分享其用C#实现“酒店世界时钟”编码招式的思路。各位匠友提出改进意见。

4)主要收获:

a)switch语句中的default语句在某些情况下不写不踏实,写了又不会执行。可以用Enum,多态或位掩码来替代switch语句。

b)变更时区应该用UTC+utcOffset,而不是用小时+utcOffset。

c)命名尽量用英文全拼,不要用缩写。

d)职责交给正确的类来实现(如DST交给City来实现,而不用写DST的Utilities类)。

e)最好用NUnit,不要用Visual Studio UnitTest。

f)测试代码的公共部分应提取到[SetUp]里面。

g)"You aren't gonna need it" (acronym: YAGNI),即目前没人调用的代码就不要写,等以后有人需要了再写,减少浪费。

4)下次操练时间:10月20日。设计模式:Flyweight pattern;编码招式:待定;活动地点:根据报名人数再定。


你可能感兴趣的:(BJDP)