您的位置:首页 > 其它

由外之内的创建类(Construct classes from the outside in)

2015-10-26 20:59 369 查看
当设计一个新类时,从调用者(caller)的角度来看类的设计是很有帮助的:
由于会有更多的用例(use case)反馈, 最终的设计质量会更好
通常会使错误的设计发现的更早,这就意味着能更快的设计好

大多数设计可以简单概括为下面几步:

做做好的假设(Make your best guess)
发现并修正错误
重复1.2.

第2步看起来是个关键步骤。错误发现得越早越好,在这方面看来,从外到里(from the outside in)设计做的很好。

设计类主要是公有方法的设计,由外至内(from out side in)的添加一个非私有方法大约有下面几步:

1. 从调用者(caller)的角度写一些用例代码

2. 通过添加一个简单的桩(stub)方法,使上面的代码编译通过。例如,如果该方法返回值为void, 桩(stub)就是一个简单的空方法,

   如果是返回一个值,则桩(stub)只需简单的返回null,0,false或空字符串,等等即可。

3. 这样,由于调用代码很少,尝试不同的设计就很简单了。

4. 根据调用者的角度决定方法名和返回值

5. 根据方法本身的实现需要(而不是调用者)来决定方法所需的参数

6. 确定返回值是否准确,这一点很重要,因为改动返回值会很大的隐响调用方代码。

7. 调用该方法是否很容易让人理解?

8. 当设计趋于稳定时,可给该方法些javadoc作为该方法和调用方的正式协议。通常,这会帮助我们说明细节和边界条件

9. 实现该方法,并测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: