《Java架构师必须知道的 6 大设计原则》
S单一职责(Single-Responsibility Principle)
创建类的时候就应该思考和注释上这个类的责任是什么。
O开放封闭原则(Open - ClosedPrinciple)
实现开闭原则的关键就是抽象化 :在"开-闭"原则中,不允许修改的是抽象的类或者接口,允许扩展的是具体的实现类。
常见设计模式:模板方法、策略模式、观察者模式。
L里氏替换原则LSP
里氏代换原则是实现开闭原则的重要方式之一。
L迪米特法则 最少知识原则(Least Knowledge Principle或简写为LKP)
狭义法则:通过引入第三者减少类之间的耦合。
广义法则:通过引入第三者减少系统之间的耦合。
I接口隔离
使用接口隔离原则拆分接口时,首先必须满足单一职责原则,将一组相关的操作定义在一个接口中,且在满足高内聚的前提下,接口中的方法越少越好。
D依赖倒置原则(Dependency-Inversion Principle)
1)抽象不应当依赖于细节;细节应当依赖于抽象;
2)要针对接口编程,不针对实现编程。
如果说开闭原则是面向对象设计的目标,依赖倒转原则是到达面向设计"开闭"原则的手段。