前言
不管是那种设计模式,或者是不涉及任何设计模式的普通代码,都应当遵循一些通用的设计准则
一般有以下几种
单一职责原则
每个接口只负责一类功能,如果一个类包含多个类别的属性和行为,应该分成多个接口实现
子类可替换原则(里氏替换原则)
只要可以使用父类的地方,都可以使用子类,并且替换成任何子类,程序都不会产生异常
依赖倒置原则
这个原则包含两层意思
一层是:模块之间的依赖关系,应当通过接口来定义,而不是在实现类中定义
另一层是:子类可以依赖父类,但是父类不能依赖子类
接口隔离原则
模块不应当和多余的接口产生关联,模块间的依赖关系,应当建立在最小的接口集合之上
解耦原则(迪米特法则)
一个对象应当对其它对象有最少的了解,不应该和其它对象产生多余的耦合
开闭原则
软件系统中的组件,比如模块、接口、类、方法等,都应当对扩展开放,对修改关闭
特别说明
当然,以上列举的设计原则,都是希望大家在写代码中尽量往这些方向靠拢
但是实际写代码时,也会适当考虑代码简洁性,不可能处处都是往极限方向去写
而且也不是任何业务都能提前预测到,做出十全十美的设计
所以大家需要掌握这些原则,并灵活运用,不能咬文嚼字,让其成为一种负担