面向对象思想设计原则与设计模式

面向对象思想设计原则
  • 单一职责原则(SRP原则)

    即开发人员常说的“高内聚,低耦合”。就说每个类只有一个职责,对外只能提供一种功能,引起类变化的原因应该只有一个,设计模式中所有设计模式都遵循这一规则。

  • 开闭原则

    核心思想:一个类对扩展开发,对修改关闭。也就是对类对改动是通过增加代码进行的而不是修改代码实现。也就说开发人员一旦写出类可运行对代码就不应该去改动它,而要保证它继续运行下去,如何做到这一点?就要借助于抽象和多态。即把可能变化的东西抽象出来,从而使抽象的东西相对稳定,而具体的实现是可改变和扩展的。

  • 里氏替换原则

    核心思想:在任何父类出现的地方,都可以用它的子类来代替。也就是说,同一个继承体系中应该有共同的行为特征。

  • 依赖注入原则

    核心思想:要依赖抽象,而不是具体实现。也就是说,在应用程序中,所有的类如果依赖其他的类,则应该依赖其他这些类的抽象类,而非这些其他类的实现类。为了实现这一原则,在开发中就要针对抽象类和接口编程,而非针对具体实现编程。

  • 接口分离原则

    核心思想:不应该强迫程序依赖他们不需要的方法。也就是说,一个接口不需要对外提供太多的行为,一个接口应该只提供一种对外的功能。不应该把所有的操作都封装到一个接口中。

  • 迪米特原则

    核心思想:一个对象对其他对象尽可能少对了解。降低各个对象的耦合,提高系统可维护性。在模块之间应该只通过接口编程,而不理会模块的内部原理。可使各个模块之间的耦合降到最低,促进软件复用。


设计模式的概述

设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了提高代码的重用性、可靠性,容易被他人理解。设计模式不是一种方法和技术而是一种思想。

设计模式的要素
  • 名字 简单有意义
  • 问题 描述在何时使用模式
  • 解决方案 描述设计的组成部分和如何解决问题
  • 效果 描述模式的优缺点和效果
设计模式的分类
  • 创建型模式(创建对象)

    1. 简单工厂模式

    2. 工厂方法模式

    3. 抽象工厂模式

    4. 建造者模式

    5. 原型模式

    6. 单例模式
  • 结构型模式(对象的结构)

    1. 外观模式

    2. 适配器模式

    3. 代理模式

    4. 装饰者模式

    5. 桥接模式

    6. 组合模式

    7. 享元模式
  • 行为型模式(对象的功能方法)

    1. 模板方法模式

    2. 观察者模式

    3. 状态模式

    4. 职责链模式

    5. 命令模式

    6. 访问者模式

    7. 策略模式

    8. 备忘录模式

    9. 迭代器模式

    10. 解释器模式
如果帮到了你,想打赏支持,喏~