设计原则
单一职责原则: 一个类只负责一项职责。 比如:orderService这里面只存放订单相关的接口,userService只存放用户相关的接口。
开闭原则: 对扩展开放,对修改关闭。 这是一个比较大的概念,有很多其它原则的影子,项目中有order模块、user模块,新增product模块,而不是在user or order中将product嵌入。
依赖倒置原则: 面向接口编程(对象多态性)
里氏替换原则: 子类可以扩展父类的功能,但不要改变父类原有的功能。 ps:子类继承父类,尽量不要覆盖父类方法,可以新增方法。
接口隔离原则: 设计接口功能尽量细粒度,最小功能单元
迪米特法则: 降低耦合(局部变量中,不要引入新的类),这样会导致开发者觉得有些依赖很莫名其妙,但必须又要引入进来,在局部变量中不易察觉。
OO原则
- 找出应用中可能需要的变化之处,把它们独立出来,不要和那些不需要改变的代码混淆在一起。
- 针对接口编程,而不是针对实现编程。
- 多用组合,少用继承。
- 为了交互对象之间的松耦合设计而努力。
- 要依赖抽象,而不依赖具体类