写点什么

架构师第三课总结

用户头像
Dennis
关注
发布于: 2020 年 06 月 24 日

本节课程主要讲了系统设计中的设计模式

1、什么是设计模式

每一种模式都描述了一个问题的通用解决方案。这种问题在我们的环境中,不停的出现。

设计模式是一种可重复使用的解决方案

2、一个设计模式的四个部分

模式的名称 -- 有少量的字组成的名称,有助于我们表达我们的设计

待解决的问题 -- 描述了何时需要运用这种模式,以及运用模式的环境

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

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

3、设计模式的分类

创建模式

结构模式

行为模式

类模式

对象模式

4、单例模式的使用优点

单例模式保证产生单一实例,就是说一个类只产生一个实例,只有一个实例,可以减少实例频繁创建和销毁带来的资源消耗

当多个用户使用这个实例的时候,便于进行统一控制

5、模版方法的模式

模版方法模式是扩展功能的最基本模式之一,他是一种类的行为模式

他是通过继承的方法来实现扩展,基类负责算法的轮廓和骨架,子类负责算法的具体实现

6、模版方法的使用场景

重构系统时,将一个大的方法打破,编程多个可扩展的步骤,

将if/else 或switch语句改成多态性

7、模版方法可能产生的问题

将抽象算法和具体步骤耦合在一起,不能独立演化

造成类的数量很多、类的层次很深。

8、策略模式

策略模式是扩展功能的另一种最基本的模式,他是通过组合的方法来实现扩展

策略模式将使用策略的人与策略的具体实现分离,策略对象可以自由组合,这是策略模式的优点

策略模式仅仅封装来算法的具体实现,方便添加和替换算法。但他并不关心何时使用何种算法,这个必须由客户端决定

9、组合模式

组合模式是一种对象的结构模式

一般在文件系统中使用

10、装饰器模式

装饰器模式也是一种对象的结构模式,他是在不改变客户端的接口的前提下,扩展现有对象的功能

用户头像

Dennis

关注

还未添加个人签名 2017.12.21 加入

还未添加个人简介

评论

发布
暂无评论
架构师第三课总结