欢迎光临散文网 会员登陆 & 注册

系统架构设计师知识清单7

2023-02-26 16:35 作者:咸鱼翻花绳  | 我要投稿

第7章 23种设计模式

这一章内容对于软件工程师来说是非常重要的,在综合知识考试中通常考的不是很难,有基础的理解即可(至少要知道模式名所属的类型和基本应用),也很适合写进论文里(在设计架构时,系统某个部分功能的使用了某种/某些设计模式实现,简单说明一下原因和效果)。


1 设计模式的组成元素

模式名、问题/意图、情景、动机、解决方案、示例、结果情景、基本原理、相关模式、已知应用


2 设计模式分类

创建型:抽象对象实例化过程

结构型:如何组合已有的类和对象

行为型:对象之间的职责及其提供的服务的分配


创建型包括5种

(1)抽象工厂模式(Abstract Factory):在不指定具体类的情况下,为创建一系列相关或相互依赖的对象提供一个接口

(2)工厂模式(Factory):不修改代码的情况下引入新类

(3)建造者模式(Builder):将复杂对象的构建与其具体表示相分离

(4)原型模式(Prototype):在不了解要创建对象的类以及如何创建等细节情况下创建对象

(5)单例模式(Singleton):确保一个类只有一个实例


结构型包括7种

(1)适配器模式(Adapter):充当两个类之间的媒介,使具有不同接口的类协同使用

(2)桥接模式(Bridge):将一个复杂的组件分成两个独立但又相关的层次

(3)组合模式(Composite):创建树型层次结构来改变复杂性

(4)装饰器模式(Decorator):不改变对象外观和功能的情况下添加或者删除对象功能

(5)外观模式(Facade):为系统中的一组接口提供一个统一的接口

(6)享元模式(Flyweight):通过共享对象减少系统中的低等级低、详细的对象数目(比如线程池、数据库连接池)

(7)代理模式(Proxy):为控制对初始对象的访问提供一个代理或占位符


行为型包括11种

(1)责任链模式(Responsibility Chain):消息可以定位到处理它的对象

(2)命令模式模式(Command):通过执行动作来参数化对象

(3)解释器模式(Interpreter):解释定义其语法的语言

(4)迭代器模式(Iterator):为集合的有序访问提供了一致的方法(最典型的比如MapReduce中的Iterator)

(5)中介者模式(Mediator):管理对象间消息分布

(6)备忘录模式(Mememto):保持对象状态的快照,对象可以返回其最初状态

(7)观察者模式(Observer):广播消息(比如vuex)

(8)状态模式(State):对象在内部状态改变时,变更具体行为,并且修改其类

(9)策略模式(Strategy):相似的类只在行为方面有所区别

(10)模版模式(Template):不修改算法结构时让子类重定义算法特定步骤

(11)访问者模式(Visitor):集中相关操作并排除不相关的操作






系统架构设计师知识清单7的评论 (共 条)

分享到微博请遵守国家法律