我所认识的设计模式

简介: 我所认识的设计模式

首先给出的明确定义是:软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。它描述了在软件设计过程中的一些不断重复发生的问题,以及该问题的解决方案。是通过总结重复错误或其他问题归纳出的一种模式。

也就是说,它是解决特定问题的一系列套路,是前辈们的代码设计经验的总结,具有一定的普遍性,可以反复使用,其目的是为了提高代码的可重用性、代码的可读性和代码的可靠性。设计模式一般是有固定模板的,我们可以在此基础上设计出我们所需要的模式,其次还给我们提供了设计目标。总的来说我们可以通过提供的设计模式来设计我们的我们的代码,利用好设计模式这种方式,我们将会使代码的书写,功能的实现更加优化完整,正确率更高。

设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性以及类的关联关系和组合关系的充分理解。

在此之前,已有人们归纳出了常用的153个设计模式,每一个设计模式都包括了三方面(前提条件,目标问题,解决方案)。

其中这些设计模式有被分为三类:

创作型模式:单例模式,工厂模式,原型模式,建造者模式等

结构型模式:适配器模式,桥接模式,组合模式,装饰模式等

行为型模式:命令模式,迭代模式,解释模式,备忘录模式,中介者模式等

在我的理解上:从模式名我们就可以大抵了解这些模式分类,创作型是给了各种与创作相关的设计模式,如工厂创作,建造这中;结构型就是你所实现的功能是具有一种结构,如某些建筑物模式,物品的结构型模式。而行为模式就是人类发出的某种行为而总结出来的,如命令模式,解释,中介者,充当某一种人物行为。

比如详细的说一些创作型模式:

工厂模式是一种创建型模式,它提供了一种创建对象的最佳方式,而不需要指定创建对象的确切类。单例模式是一种创建型模式,它保证一个类只有一个实例,并提供一个访问该实例的全局点。适配器模式是一种结构型模式,它允许将不兼容对象包装在适配器中,以便它们可以在系统中协同工作。装饰器模式是一种结构型模式,它允许向对象添加行为而不影响其原始类别。代理模式是一种结构型模式,它允许通过使用代理对象来控制对其他对象的访问。

每一种模式都有其特点及其作用。

在者就是设计模式的优点:

首先因为他是众多专家以及技术人员共同认为且总结出来的,我们大多数人都能理解和交流。其次模式设计可由我们所需要的优化,修改,很灵活。其次是对面向对象这个过程的深入理解,坐后边是能调高我们的创作效率了。

以上就是我所认识到的设计模式


相关文章
|
5月前
|
设计模式 开发框架 前端开发
设计模式一
设计模式是面向对象编程的实践经验,旨在解决一系列问题,促进软件的可升级和维护。它分为创建型(如工厂、单例模式)、结构型(适配器、装饰器模式等)和行为型(观察者、策略模式等)三大类。J2EE模式关注表示层,包括MVC模式等。设计模式的七大原则包括里氏替换、依赖倒置、开闭原则、单一职责、接口隔离、迪米特原则和合成复用原则,这些原则有助于减少耦合和提高代码可读性。接口作为契约和层间对接工具,约束类型行为并允许实现多继承。
|
设计模式 存储 监控
设计模式(C++版)
看懂UML类图和时序图30分钟学会UML类图设计原则单一职责原则定义:单一职责原则,所谓职责是指类变化的原因。如果一个类有多于一个的动机被改变,那么这个类就具有多于一个的职责。而单一职责原则就是指一个类或者模块应该有且只有一个改变的原因。bad case:IPhone类承担了协议管理(Dial、HangUp)、数据传送(Chat)。good case:里式替换原则定义:里氏代换原则(Liskov 
36077 15
设计模式(C++版)
|
设计模式 存储 算法
|
设计模式 关系型数据库
设计模式介绍
设计模式介绍
100 0
|
设计模式 存储 NoSQL
为什么我们需要设计模式?
设计模式解决什么问题设计模式一直被认为是一门难以学习的课程。究其原因是因为我们不清楚设计模式在解决哪些问题方面发挥作用。简言之,设计是为了实现特定的目标,基于不断更新的局部知识来获得解决方案的过程。我们通常熟悉的范式是在几乎掌握所有知识的情况下解决问题,例如解数学题、物理题等。然而,在软件编程过程中,我们掌握的知识往往不充分,而且会不断更新,因此需要我们关注有哪些知识,没有哪些知识,可以获取哪些知
9329 1
|
设计模式 Java
23种设计模式
23种设计模式
141 0
|
设计模式 Java
23种设计模式-总揽篇
23种设计模式-总揽篇
23种设计模式-总揽篇
|
设计模式 存储 缓存
设计模式的几个问题
《基础系列》
114 0
|
设计模式 SQL 算法
设计模式-25-设计模式汇总
今天汇总下学过的设计模式。
97 0
|
设计模式 安全 Java
关于设计模式
一些设计模式demo笔记
480 0