系统设计的5大原则,简写分别是S、O、L、I、D。
S - 类职责单一原则: 即职责划分要清晰,不同职责的不要搅和在一起。每个类应该只有一个让他发生改变的原因。
O - 开放封闭原则: 对扩展开发,对修改封闭。即如果系统要变化,就去扩展、新增新类,不要修改现有的类。
L - LISKOV原则: 子类应该能充分覆盖父类,并且让使用者分不出差别。
I - 接口分离原则:每个接口只管一个功能,不要出现“胖接口”。增加功能时,要加接口,而不是改接口
D - 依赖倒置原则:具体应该依赖于抽象,而不是抽象一来于具体,即低层要依赖于高层。
对于以上5大原则,此处不详细解释,有兴趣的可以查阅《你必须知道的.net》第二版,里面讲的非常详细。
如果详细分析这5大原则,其实他们都是围绕着“提取抽象、隔离具体”来的。
S - 类职责单一原则: 隔离
O - 开放封闭原则: 依赖于抽象,隔离具体
L - LISKOV原则:抽象
I - 接口独立原则:隔离
D - 依赖倒置原则:依赖于抽象