随笔 - 53, 文章 - 0, 评论 - 3, 引用 - 0
数据加载中……

programming to interface 之我见

Programming to Interface 是OOD的基本原则之一。
但是不等于说只要应用了Interface就符合Programming to Interface的原则。
我对以下使用Interface的情形有不同看法。
为DDO建立一个接口(Interface)。然后当DDO跨层使用时,我们用该接口作为参数类型。
我认为这是没有意义的,根本实现不了Programming to Interface 的初衷。
1. Programming to Interface 的好处之一是可以为不同的实现提供统一的接口。但是这个案例中,只有一个DDO,对应这一个Interface。
2. Programming to Interface 的好处之二是当实现改变时,interface可以保持不变。这样Programming to Interface 部分的代码就可以不用随实现的改变而改变。但是这个案例中,一旦DDO发生了改变,Interface也需要发生改变。
总之,这这种情形下,增加一个接口纯属多余,没有增加任何价值,反而增加了维护接口的麻烦。
这也说明正确应用Programming to Interface 是多么重要。否则再漂亮的法则一旦滥用,误用,不仅没有任何好处,而且可能造成额外的负担。
造成这种误用的关键原因是,DDO并非一种理想的Object,getter和setter没有足够的抽象程度,不能提炼成接口。勉强用上接口也是徒劳的。

posted on 2005-09-20 21:28 InPractice 阅读(257) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: