设计原则
设计模式是手段,设计原则是思想指导
指导建议,很多情况无法做到完全遵守
很多时候要有意无意打破部分原则,所以设计就是一种权衡
“设计就是一种危险的平衡艺术”(业务、难度、性能)
1.单一职责原则SRP(Single Responsibility Principle)
一个类应该仅有一个引起它变化的原因
2.开放-关闭原则OCP(Open-Closed Principle)
对扩展开放,对修改关闭(设计过度)
3.里氏替换原则LSP(Liskov Substitution Principle)
子类类型能够替换父类类型,并且不出问题
是开闭原则的一个体现
4.依赖倒置原则DIP(Dependence Inversion Principle)
依赖于抽象,不要依赖于具体类
5.接口隔离原则ISP(Interface Segregation Principle)
不应该强迫客户依赖于他们不用的方法
接口污染,分离接口,可以通过委托,多继承
6.最少知识原则LKP(Least Knowledge Principle)
只和你的朋友谈话
谁是我的朋友?
当前对象本身
通过方法的参数传递进来的对象
通过当前对象创建的对象
当前对象所引用的对象
方法内创建的对象
设计模式是手段,设计原则是思想指导
指导建议,很多情况无法做到完全遵守
很多时候要有意无意打破部分原则,所以设计就是一种权衡
“设计就是一种危险的平衡艺术”(业务、难度、性能)
1.单一职责原则SRP(Single Responsibility Principle)
一个类应该仅有一个引起它变化的原因
2.开放-关闭原则OCP(Open-Closed Principle)
对扩展开放,对修改关闭(设计过度)
3.里氏替换原则LSP(Liskov Substitution Principle)
子类类型能够替换父类类型,并且不出问题
是开闭原则的一个体现
4.依赖倒置原则DIP(Dependence Inversion Principle)
依赖于抽象,不要依赖于具体类
5.接口隔离原则ISP(Interface Segregation Principle)
不应该强迫客户依赖于他们不用的方法
接口污染,分离接口,可以通过委托,多继承
6.最少知识原则LKP(Least Knowledge Principle)
只和你的朋友谈话
谁是我的朋友?
当前对象本身
通过方法的参数传递进来的对象
通过当前对象创建的对象
当前对象所引用的对象
方法内创建的对象
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
整理自教程