【菜鸟日记】软件构造笔记 6.2 可维护的设计模式(详细版)


分为三大类,创作模式,结构模式和行为模式

在这里插入图片描述
在这里插入图片描述

6.2.1 Creational Patterns

Factory Method Pattern

一般情况下我们采用new创建一个新的对象
在这里插入图片描述
但是在static Factory Method Pattern中我们采用static方法创建新的类

在这里插入图片描述

使用static的好处与坏处

在这里插入图片描述

如果使用Factory Method Pattern,通过定义工厂父类负责定义创建对象的公共接口,而工厂子类则负责生成具体的对象。(比如Graph中的emptyt())比如:

在这里插入图片描述

工厂模式的使用场景:
在这里插入图片描述
使用工厂模式的优缺点
在这里插入图片描述

Abstract Factory Pattern

抽象工厂的含义以及和普通工厂的区别:
在这里插入图片描述
适用场景

在这里插入图片描述
抽象工厂的结构,图解:

在这里插入图片描述

Builder

具体含义: 将复杂对象的构造与其表示分开,以便相同的构建过程可以创建不同的表示,从而组装复杂的实例。如图所示:在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Builder和Abstract Factory的对比在这里插入图片描述

6.2.2 Structural patterns

具体含义:将抽象概念与实现分离,避免过于复杂的继承结构。将类的功能层次结构(abstract)与实现层次结构分离(implementation)。如:下面的例子使用两个implements将extends变得更加简单,否则在继承中需要取考虑具体类型
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Proxy

用途:避免对象被客户端直接访问

在这里插入图片描述
设计模式图解:
在这里插入图片描述

在这里插入图片描述

Composite

解决问题:容器中具有基本元素和组合元素两类,如何以统一的方式访问所有的元素
解决办法:用递归方式访问

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

·

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值