八大设计原则

1.依赖倒置原则(DIP)–important 贯穿于整个设计原则
举例:观察者模式—一个由文件分割器引起的设计模式

高层模块的稳定不依赖于低层模块的变化,两者依赖抽象的稳定
抽象稳定不依赖于细节的变化,实现细节应依赖于抽象的稳定

2.开放封闭原则(OCP)
举例:策略模式—一个由税计算引起的设计模式

对扩展开发,对更改封闭
类模块应该是可扩展的,但是不可修改

3.单一职责原则(SRP)

一个类应该仅有一个引起它变化的原因
变化的方向隐含着类的责任

4.Liskov替换原则(LSP)

子类必须能够替换它们的基类(IS-A)
继承表达类型抽象
5.接口隔离原则(ISP)

不应该强迫客户程序依赖于它们不用的方法
接口应该小而完备

6.优先使用对象组合,而不是类继承

类继承通常为“白箱复用”,对象组合为“黑箱复用”
继承在某种程度上破坏了封装性,子类父类耦合度高
对象组合只要求被组合的对象有着良好的接口。

7.封装变化点

8.针对接口编程,而不是针对实现编程

面向接口设计:接口标准化

将设计原则提升为设计经验:

设计习语 Design Idioms
设计模式 Design Patterns
架构模式 Architectural Patterns

发表评论

电子邮件地址不会被公开。 必填项已用*标注