设计模式

用户头像
Zzzz
关注
发布于: 2020 年 10 月 11 日

设计模式的定义

什么是设计模式?

每一种设计模式就是一种问题的通用解决方案,一种问题会重复出现,解决方案也就可以重复使用,设计模式就是一种可以重复使用的解决方案。

设计模式由哪几部分组成?

  • 模式的名称:由少量的字组成,有助于表达我们的设计。比如Adapter就知道是适配器,Observer就知道是观察者模式。

  • 待解问题:描述了何时需要运用这种模式,以及运用模式的环境(上下文)。

  • 解决方案:描述了组成设计的元素(类和对象)、它们的关系、职责以及合作。但这种解决方案是抽象的,它不代表具体的实现。

  • 结论:运用这种方案所带来的利和弊。主要是指它对系统的弹性、扩展性、和可移植性的影响。



常用的设计模式

创建型

单例设计模式

主要要解决的问题:

全局唯一资源,天生适合单个对象方便统一管理,如配置,打印机

类本身设计为是无状态的,不需要过多的创建对象,浪费系统资源



简单工厂设计模式

解决的问题、常用场景:

屏蔽类的创建细节



结构型

装饰器模式

解决的问题、常用场景:

不修改类的情况下,对类进行功能的加强



模板模式

解决的问题、常用场景:

代码的复用、扩展

策略模式

解决的问题、常用场景:

避免冗长的 if-else 或 switch 分支判断



其他设计模式待后续继续学习理解后补充。



总结

之前学习设计模式,总是学完就忘了,记忆不太深刻,实际工作中有使用过一些设计模式,但是也不是很清楚为什么使用,通过这次学习,最大的收获就是理解到了,我们学习设计模式,最重要的是要了解这种设计模式是要解决哪一类问题的,为什么解决这种问题需要用这种设计模式,这种设计模式有什么优势。再的就是学习这种设计模式的实现,以及运用。只有深刻理解设计模式解决哪种问题,下次遇到问题,才能快速地想起对应的设计模式进行解决。

用户头像

Zzzz

关注

还未添加个人签名 2018.09.17 加入

还未添加个人简介

评论

发布
暂无评论
设计模式