代码改变世界

随笔档案-2013年10月

TDD:代码可测试设计

2013-10-22 17:28 by Spring.Guo, 604 阅读, 收藏,
摘要: 1 方法内部代码命令,查询分离。 a . 命令方法:执行一系列动作。 b. 查询方法: 执行查询动作,并返回值。 2 一个类中有好几个地方都用到了一个或多个全局变量,可以考虑把全局变量封装到另外一个类中。 a . 使用示例: 在程序运行前,需要初始化的全局变量,或者缓存数据。 3 通过子类来解除代码之间的依赖。 a . 同层多个类之间的依赖解除,使用一个virtual 方法来包裹依赖对... 阅读全文

TDD: 解除依赖

2013-10-16 16:57 by Spring.Guo, 410 阅读, 收藏,
摘要: 1 A类依赖B 类,可以把B类提取成IB接口,解除AB 之间的依赖关系。 通过创建实现了IB接口的BStub 装代码,可以模拟B类进行测试。 这是针对接口编程的典型。适合构造代价大,变化多的情况。应用示例如下: a.上层与下层之间的设计,比如业务层依赖数据访问层。 b. B类是一个复杂对象。 比如 发送邮件,连接网络,调用物理硬件接口等。 2 A 类依赖B 类,把B类作为参数传递到A... 阅读全文