设计模式与设计原则

设计模式

设计模式是一套被反复使用,多数人知晓,经过分类编目的,代码设计经理总结,使用设计模式是为了可重用代码,让代码更容易被他人理解,保障代码可靠性

设计模式不是一种方法和技术,而是一种思想

设计模式和具体语言无关,学习设计模式就是要建立面向对象的思想
尽可能面向接口编程,低耦合,高内聚

分类

创建型模式:对象的创建
结构型模式:对象的组成
行为型模式:对象的行为

创建型模式

  • 简单工厂模式
  • 工厂方法模式
  • 抽象工厂模式
  • 建造者模式
  • 原型模式
  • 单例模式

结构型模式

  • 外观模式
  • 适配器模式
  • 代理模式
  • 装饰模式
  • 桥接模式
  • 组合模式
  • 享元模式

行为型模式

  • 模版方法模式
  • 观察者模式
  • 状态模式
  • 职责链模式
  • 命令模式
  • 访问者模式
  • 策略模式
  • 迭代器模式
  • 解释器模式
  • 备忘录模式

设计原则

单一职责原则

核心思想:高内聚,低耦合

每一类只有一个职责,对外只能提供一种功能
而引起类变化的原因应该只有一个,在设计模式中,所有的设计模式都遵循这一原则

开闭原则

核心思想:一个对象对扩展开放,对修改关闭

即对类的改动是通过增加代码进行的,而不是修改现有代码
需要借助抽象和多态,即把可能变化的内容抽象出来,从而使抽象的部分是相对稳定的,而具体的实现则是可以改变和扩展的

里氏替换原则

核心思想:在任何父类出现的地方都可以用它的子类来替代

同一个继承体系中的对象应该有共同的行为特征

依赖注入原则

核心思想:要依赖于抽象,不要依赖于具体实现

应用程序中,所有的类如果使用或依赖于其它的类,则应该依赖这些其它类的抽象类,而不是这些其它类的具体类。
要求我们在编程的的时候针对抽象类或者接口编程,而不是针对具体实现编程

接口分离原则

核心思想:不应该强迫程序依赖它们不需要使用的方法

一个接口不需要提供太多的行为
一个接口应该只提供一种对外的功能
不应该把所有的操作都封装到一个接口

迪米特原则

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

设计模式与设计原则

上一篇:SMTP发送邮件


下一篇:path 中方法使用及 __dirname 和 __filename