软件构造相关

结构型模式
adapter(适配器模式)
什么时候使用
将某个类/接口转换为client期望的其他形式
同故宫增加一个接口,将已存在的子类封装起来,client面向接口编程,从而隐藏了具体子类

模型结构
其实它的本质就是使用一个中间的类,将原来的方法隔离,为原来的方法重新定义接口,并提供给client使用

decorator(装饰器模式)
什么时候使用
为对象增加不同侧面的特性
对每一个特性构造子类,通过委派机制增加到对象上
同时使用了子类型和委托机制

模型结构
decorator中有一个rep,用来维护当前的component,你需要用什么的时候,用相应的子类包装一下就可以了,注意component不可能同时拥有这些特性,仅仅是在你需要的时候,动态的获取

facade(外观模式)

什么时候使用

客户端需要通过一个简化的接口来访问复杂系统内的功能

模型结构

将n个操作组合起来,然后呈现给client

行为类模式

策略模式(strategy pattern)

什么时候使用

有多种不同的算法来实现同一个任务,但需要client根据需要动态切换算法,而不是写死在代码里

模型结构

为不同实现设计一个接口,在client使用时进行delegation调用

template method(模板模式)

什么时候使用

做事情的步骤一样,但具体方法不同
共性的步骤在抽象类内公共实现,差异化的步骤在各个子类中实现
使用继承和重写实现模板模式

模型结构

父类中有一个模板方法

iterator(迭代器模式)

什么时候使用

client希望遍历被放入容器/集合类的一组ADT对象,无需关心容器的具体类型
不管对象被放进哪里,都应该提供同样的遍历方式

实现方法

直接实现Java内置iterable和iterator接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值