- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 重构 — 改善既有的类图设计 条款6:模块的防火墙
重构 — 改善既有的类图设计条款6:模块的防火墙黄国强 2008/5/27图 1 看图 1 ,一个模块由A、B、C 三个类 组成,外部类可以访问类 A 。从图上看,外部类通过类 A 开始的依赖箭头可以访问到类 B 和 C 。显然这个模块的细节也暴露给外部类了。 如果在设计上不想让外部类看到这个模块的细节,如何我们应该如何做到这点呢?请看图 2
2008-05-27 17:07:00 776
原创 重构 — 改善既有的类图设计 条款5:给工厂加一个代理
重构 — 改善既有的类图设计条款5:给工厂加一个代理黄国强 2008/5/21向这次大地震遇害的同胞表示哀悼。 前些天和同事聊到设计做到什么程度的话题,我特别提到经济性这个原则。在做设计的时候对于灵活性也要有个度。并不是越灵活越好。而把握这个度的原则就是经 济性。在你的项目的需求很少变化或本身很简单的情况下,做过多设计并不好。正所谓“过犹不及”。而我更是认为“欠点总比过好
2008-05-21 13:43:00 710
原创 重构 — 改善既有的类图设计 条款4:消除重复的依赖关系
重构 — 改善既有的类图设计 条款4:消除重复的依赖关系黄国强 2008/5/12图 1 见 图1。图中,类 A 因为调用了类 B ,所以有一条从类 A 指向类 B 的箭头。同时类 A 又调用了类 C ,所以有一根从类 A 指向类 C 的箭头。由于类 B 也有一根指向类 C 的箭头,所以为了消除重复的依赖关系,我们将类 A 指向类 C 的箭头去掉。重构后的设计见图 2。
2008-05-12 12:43:00 689
原创 重构 — 改善既有的类图设计 条款3:用 FACADE 类消除依赖关系的交叉
重构 — 改善既有的类图设计条款3:用 FACADE 消除依赖关系的交叉黄国强 2008/5/8有 些网友对条款2不是很赞同,认为看惯了基类在上面,继承类在下面的图。认为还是原来的清晰。关于这点,我从两个方面解释一下。其一,在一个分层设计中,依 赖关系箭头一般都是从上指向下的,而基类在上面,继承类在下面的图正好和总体设计图相反。风格上并不统一。其二,一般静态结构图主要表现静态的结构,我个 人把一些
2008-05-08 12:38:00 1008
原创 重构 — 改善既有的类图设计 条款2:流水不争先
2008-05-06 | 重构 — 改善既有的类图设计 条款2:流水不争先 标签: 重构 C++ 设计 重构 — 改善既有的类图设计 条款2:流水不争先黄国强 2008/5/6“流 水不争先”这句极其经典的名
2008-05-07 09:40:00 850
原创 重构 — 改善既有的类图设计 条款1:将双向依赖改变成单向依赖
重构 — 改善既有的类图设计条款1:将双向依赖改变成单向依赖黄国强 2008/5/6把这个条款放在第一个,是因为我认为,把设计中的所有双向依赖关系排除掉,是进行下一步重构工作的前提。图1如图1所有,图中有两个类,他们之间存在双向依赖关系。存在着两条箭头。这个图是用 Visio 画的。箭头从类 A 指向 B 表示 A 依赖于B。图2图中表现了将图1中的类图变成单向依赖的两个方法,具体
2008-05-07 09:35:00 2027
redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库
2023-10-18
FlashDriveCardTester是一款U盘性能检测工具 主要作用就是帮助用户检查U盘的情况,通过检测U盘的健康状态再决定
2023-10-14
tensorflow-gpu-2.4.0rc3-cp38-cp38-win-amd64
2021-01-08
HtmLayoutSDK.zip
2020-07-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人