一个理想的设计的特征
这一章我主要了解了一个理想设计的特征,书中是这样说的:
一个理想的设计的特征是怎样的呢? 他们有一些共同的特征,这里罗列里一些,虽然都是一个一个的点,但你可以以此针对你做出的设计一一对照一下。
1)最小的复杂度:你的设计得很容易看懂,很清晰明了,而不是自作聪明的用一些高深的东西。
2)易于维护:你的设计是自说明的,一目了然的,不需要太多的解释,让别人看到你的设计后很少会问你一些问题。
3)松散耦合:模块间的关联很少,这样可以减少集成,测试和维护的工作量,应用合理的抽象,封装,信息隐藏等做到松散耦合。
4)可扩展性:你的设计不是死的,在不大动底层结构的情况下,可以增加一些有可能增加的功能。
5)可重用性:如果做出一个通用模块,就可以在其它项目里重用了。
6)高扇入:第一次听这个词,就是一些少数的底层的工具类,会被上层大量的类使用。
7)低扇出:一个类使用其它类的数量尽量少,如果多的话,这个类就会很复杂。
8)可移植性:尽量避免用特定平台,特定语言的特性来进行设计,当然这个看具体情况。
9)精简型:不做过度设计,对一些很少可能出现的情况进行设计。
10)层次性:好的设计一般是分层的,可以从每个层次去观察系统,而不用知道下一层的详细,可能理解起来比较难,我觉得大概就是高层类和低层类的意思吧, 底层类就类似基础组件,高层类就是调用底层类实现业务逻辑,高层类设计的时候只要知道底层类提供什么功能就行了,不必知道底层类的细节。
11)标准技术:尽量使用标准的,大家熟悉的技术。