一、“开-闭”原则(OCP)
对扩展开放,对修改关闭。
里氏代换原则(LSP):任何基类可以出现的地方,子类一定可以出现。
依赖倒转原则(DIP):依赖于抽象,不要依赖于实现;抽象不应当依赖于细节,细节应当依赖于抽象;要针对接口编程,不要针对实现编程;
合成/聚合复用原则(CARP):尽量使用合成/聚合,而不是继承。
迪米特法则(LoD):一个软件实体应当与尽可能少的其它实体发生相互作用。
接口隔离原则(ISP):应当为客户端提供尽可能小的单独接库,而不是提供大的总接口;
原文:http://www.cnblogs.com/wscy/p/7684543.html