为什么要使用这些特征
高质量的设计通常有很多常见的特征,换言之,拥有这些高质量的特征,也就理高质量的设计更近了
1、最小的复杂度
设计的首要目标就是让复杂度最小,避免看似聪明的设计。如果所编写的代码不能专注于程序的一部分而忽略其他部分,那这一设计就没什么用了。
2、易于维护
易于维护意味着设计代码的时候时刻为了维护程序的人员着想,时刻想着那些维护你代码的程序员可能会就你的代码而提出的问题。把那些程序员当做你的听众,自然也就写出了自明的系统。
3、松散耦合
松散集合意味着设计程序的时候,让程序的各个组成部分之间的关联最小。通过应用类接口中的合理抽象、封装性以及信息隐藏等原则,设计出关联程度尽可能小的类,减少关联也就减少了集成、测试和维护时的工作。
4、可扩展性
在不改变原来系统的代码上,只需要增加一部分代码就可以扩展新的功能,就称之为可扩展性良好的代码。尤其是在越有可能发生需求变更的地方越应该符合设计的可扩展性。
5、可重用性
所编写系统的子程序在其他地方可以被重复使用的性质
6、高扇入
指的是大量的类使用了某一个给定类的部分代码,这意味着这个工具类很好的利用了了较低层次的工具类
7、低扇出
低扇出指的是一个类中少量或者适量的引用其他的类。(高扇入约大于7个),一个类大量的使用了其他类的类,会因此变得十分复杂。
8、可移植性
可移植性是说应该这样设计系统,它可以很方便移植到其他环境中
9、精简性
删除掉的代码不影响功能的实现就应该删除。