摘自《大话设计模式》
单一职责
一个类应该仅有一个引起它变化的原因。
如果你能够想到多于一个动机去改变一个类,那么这个类就具有多于一个的职责。
开发封闭
软件实体(类,模块,函数等等)应该是可以扩展的,但是不可修改的。
依赖倒转
A高层模块不应该依赖底层模块,两个都应该依赖抽象。
B抽象不应该依赖细节,细节应该依赖抽象。
里氏代换
子类型必须能够替换掉他们的父类型
摘自《大话设计模式》
一个类应该仅有一个引起它变化的原因。
如果你能够想到多于一个动机去改变一个类,那么这个类就具有多于一个的职责。
软件实体(类,模块,函数等等)应该是可以扩展的,但是不可修改的。
A高层模块不应该依赖底层模块,两个都应该依赖抽象。
B抽象不应该依赖细节,细节应该依赖抽象。
子类型必须能够替换掉他们的父类型