一、能力模型
二、框架设计原则:
就是规则+反射
1.高内聚,低耦合
2.少用继承,多用组合(组合和继承,都能获取额外的功能或数据)
前提:在当前类中获取别的数据或功能
继承:extends
组合:用类的属性方式组合,也可以用方法的参数组合
3程序维护性强(低耦合)
4程序扩展性强(在不影响旧代码的前提下,添加新功能)
5程序的复用高
6.代码的可读性高
三、面向对象的设计原则:
1.单一职责原则:
一个项目,只做一件事
一个模块,只做一件事
一个包,只做一件事
一个java类,只做一件事
一个属性,只表达一件事
一个方法,只做一个功能
做好单一职责,是很难的
2.里氏替换原则
3.依赖倒置原则
4.接口隔离原则
5.迪米勒法则
6.开闭原则:
对于修改来说是关闭,对于扩展来说是开放的
遵循单一职责原的优点有:
可以降低类的复杂度,一个类只负责一项职责,其逻辑肯定要比负责多项职责简单的多;
提高类的可读性,提高系统的可维护性;
变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其他功能的影响。
需要说明的一点是单一职责原则不只是面向对象编程思想所特有的,只要是模块化的程序设计,都适用单一职责原则。