设计模式——六大原则

一、 六大设计原则

1. 单一职责原则:应该有且仅有一个原因引起类的变更

2. 里氏替换原则:子类可替换父类。

  a) 子类必须完全实现父类的方法

  b) 子类可以有自己的个性

  c) 子类实现父类方法时,入参可放大

  d) 子类实现父类方法时,输出参数可缩小

3. 依赖倒置原则:高层模块不应该依赖底层模块,二者都应该依赖其抽象。

  a) 正常依赖情况:高层模块直接依赖底层模块。如果底层模块需要被替换,那么高层模块代码需要跟着变动。耦合程度过高。

  b) 倒置原则要求高层模块和底层模块均依赖起抽象,那么在需要更换底层模块时,仅需将抽象类更换新模块即可。

  c) 实现类依赖抽象类或接口,依赖关系通过接口或抽象类产生

4. 接口隔离原则:仅提供客户端需要的接口,即要求对外的每个接口中的方法尽可能的少。

5. 迪米特法则:一个类只和朋友类交流,即我只跟成员变量,方法的输入和输出参数接触。

6. 开闭原则(最基础的原则,精神领袖):一个软件实体(类,接口等)应该对扩展开放,对修改关闭。简单来说就是,在现实开发中,尽可能不去修改其他人的代码,而是使用扩展,重写等方法对业务层面的需求进行修改或添加

二、 注意

在实际开发过程中,所有原则均需为实际需求让路,注意适度原则。我们结合使用六个原则的好处,或者说目标是建立稳定,灵活,健壮的设计。