类与方法设计:从基础概念到实践优化
在软件开发中,类和方法的设计是构建高效、可维护系统的关键环节。本文将深入探讨类与方法设计中的重要概念,如Connascence、封装级别,以及类和方法设计的具体活动,包括添加规范、识别复用机会、重构设计和优化设计等。
1. Connascence:凝聚与耦合的泛化
Connascence将凝聚和耦合的概念进行了泛化,并与封装的理念相结合。为了实现这一点,我们定义了三个封装级别:
- Level - 0封装 :指在单行代码中实现的封装程度。
- Level - 1封装 :通过将多行代码组合成一个方法来实现的封装级别。
- Level - 2封装 :通过创建包含方法和属性的类来实现的封装级别。
方法凝聚和交互耦合主要涉及Level - 1封装,而类凝聚、泛化/特化凝聚和继承耦合仅涉及Level - 2封装。Connascence作为凝聚和耦合的泛化,同时涉及Level - 1和Level - 2封装。
从字面意义上讲,Connascence意味着“一起诞生”。在面向对象设计中,它表示两个模块(类或方法)紧密交织,对其中一个模块的更改很可能需要对另一个模块进行相应更改。虽然这与耦合表面上相似,但结合封装级别来看,情况并非如此简单。我们的目标是通过消除系统中不必要的Connascence来最小化整体Connascence;最小化跨越封装边界(如方法边界和类边界)的Connascence;并最大化封装边界内的Connascence。
基于这些准则,子类不应直接访问超类的任何
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



