设计模式六大原则与23种设计模式详解(持续更新)

目录

1、设计模式的目的

2、设计模式的重要性

3、设计模式的六大原则

3.1、单一职责原则(SRP:Single Responsibility Principle)

3.2、接口隔离原则(Interface Segregation Principle)

3.3、依赖倒转(倒置)原则(Dependence Inversion Principle)

3.4、里氏替换原则(Liskov Substitution Principle)

3.5、开闭原则(Open Closed Principle)

3.6、迪米特法则(Law of Demeter)

4、23种设计模式

创建型模式(创建对象的角度)

4.1、单例模式(Singleton Pattern)

4.2、简单工厂模式(Simple Factory Pattern)

4.3、工厂方法模式(Factory Method Pattern)

4.4、原型模式(Prototype)

4.5、建造者模式(Builder)

结构型模式(软件结构的角度)

4.6、适配器模式(Adapter)

行为型模式(功能方法的角度)


1、设计模式的目的

编写软件过程中,程序员面临着来自 耦合性内聚性 以及 可维护性可扩展性,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件),具有更好的:

1、代码重用性(即:相同功能的代码,不用多次编写)

2、可读性(即:编程规范性,便于其他程序员的阅读和理解)

3、可扩展性(即:当需要增加新的功能时,非常方便,称为可维护性)

4、可靠性(即:当我们增加新的功能后,对原来的功能没有影响)

5、使程序呈现高内聚(功能模块内部联系非常紧密),低耦合(功能模块之间联系非常稀疏)的特性

设计模式包含了面向对象的精髓,“懂了设计模式,你就懂了面向对象分析和设计(OOA/D)的精要”

设计模式原则,其实就是程序员在编程时,应当遵守的原则,也是各种设计模式的基础(即:设计模式为什么这样设计的依据

2、设计模式的重要性

  • 软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。这个术语是从建筑设计领域引入到计算机科学的。
  • 拿实际工作经历来说,当一个项目开发完后,如果客户提出新增功能,怎么办?
  • 如果项目开发完成后,原来程序员离职了,你接手维护该项目怎么办?(维护性[可读性、规范性])
  • 目前程序员门槛越来越高,一线IT公司(大厂),都会问你在实际项目中使用过什么设计模式,怎么使用的?解决了什么问题。
  • 设计模式在软件中的哪里? 面向对象(oo) ==> 功能模块 [设计模式+算法(数据结构)] ==> 框架 [使用到多种设计模式] ==> 架构 [服务器集群]

如果想成为合格的软件工程师,那就花时间来研究下设计模式是非常必要的。

3、设计模式的六大原则

要学习设计模式,首先要知道设计模式所遵循的设计原则,设计原则有多个(本篇有7个,其他地方可能有6个或8个,其核心原则都是差不多的)

3.1、单一职责原则(SRP:Single Responsibility Principle)

3.2、接口隔离原则(Interface Segregation Principle)

3.3、依赖倒转(倒置)原则(Dependence Inversion Principle)

3.4、里氏替换原则(Liskov Substitution Principle)

3.5、开闭原则(Open Closed Principle)

3.6、迪米特法则(Law of Demeter)

 

4、23种设计模式

创建型模式(创建对象的角度)

4.1、单例模式(Singleton Pattern)

4.2、简单工厂模式(Simple Factory Pattern)

4.3、工厂方法模式(Factory Method Pattern)

4.4、原型模式(Prototype)

4.5、建造者模式(Builder)

结构型模式(软件结构的角度)

4.6、适配器模式(Adapter)

行为型模式(功能方法的角度)

 

 

你可能感兴趣的:(设计模式)