您的位置:首页 > 其它

重构 — 改善既有的类图设计 条款6:模块的防火墙

2008-05-27 17:07 477 查看
重构 — 改善既有的类图设计
条款6:模块的防火墙

黄国强 2008/5/27




图 1

看图 1 ,一个模块由A、B、C 三个类 组成,外部类可以访问类 A 。从图上看,外部类通过类 A 开始的依赖箭头可以访问到类 B 和 C 。显然这个模块的细节也暴露给外部类了。
如果在设计上不想让外部类看到这个模块的细节,如何我们应该如何做到这点呢?请看图 2 。




图 2

从图 2 看出,外部类只能看到类 A_Factory_Proxy、I_A_Factory 和 InterFace_A 。类 A、B、C 对外部类来说是不可见的。这里出现的类 InterFace_A 起到了防火墙的作用。工厂代理类 A_Factory_Proxy 的解释请看“条款 5 ”的描述。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐