1.开闭原则
一个软件应该对扩展开放,对修改关闭。在设计这个模块的时候就应该使这个模块在不被修改的情况下被扩展。也就是不必修改源代码而改变这个模块的行为。
2.依赖原则
要依赖于抽象,而不要信赖于现实。开闭原则事目标,而达到这个目标的手段事依赖原则。
3.里氏原则
任何基类出现的地方子类一定可以出现。开闭原则的关键步骤是抽象化。而基类与子类的继承关系就是抽象化的具体表现。该原则的目的是对实现抽象化的具体步骤的规范。
4.合成/聚合复用原则
要尽量使用合成/聚合,而不是继承关系达到复用的目的。该原则就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分。新的对象通过向这些对象的委派达到复用已有功能的目的
5.迪米特原则
软件实体应当尽可能少地与其它实体发生相互作用。模块之间交互要少。类似高类聚低耦合。
6.接口隔离原则
应当为客户端提供尽可能小的单独接口,而不要提供大的总接口。也即是使用多个专门的接口比使用单一的总接口要好。
以上是我今天看书的一些收获,记录下来更深刻点,后面忘记也容易查找。