首页 > 代码库 > 杂项:软件设计模式
杂项:软件设计模式
一、抽象工厂模式关键
1、抽象工厂接口类:提供全部抽象产品的创建接口
2、根据抽象产品分支出来有多少个产品簇决定有多少个具体工厂
3、每个具体工厂生产一个产品簇
二、适配器模式
1、有类适配器模式(继承)、对象适配器模式(调用或聚合)
2、注意JAVA不支持多重继承,所以JAVA中适配源超过 1个 可采取对象适配器模式
3、适配器模式关键:适配目标接口类:其中包含了用户所希望的所有接口,该类提供给适配器实现,
适配器类:该类实现适配器目标接口类的所有用户希望的接口,继承或者调用/集成适配源的接口方法
4、对象适配器原理:可把适配源类对象聚合到是适配器中作为适配器类的成员属性,当用户希望使用某些已经存在在适配源中的接口时,直接调用该对象的接口函数
三、外观模式
1、本质:把用户所希望与之打交道的所有类聚合到一个类中,该类即为外观类。
2、外观类中包含所有与用户打交道的类对象,因此用户仅需要与外观类打交道,避免直接与其他多个类打交道的复杂过程
3、外观类可给用户专门提供服务接口方法,在此方法中调用聚合在本类中的对象的方法完成用户希望的工作。
四、策略模式
1、抽象策略接口类:提供一个所有子类实现自己算法的接口(策略模式定义一系列的算法,将每个算法封装起来(在具体子类中),并且是他们之间可以互相替换)
2、具体策略类:实现抽象策略类接口,并实现定义的一系列算法中的某个具体算法,有时需要调用上下文相关方法完成任务
3、上下文类:客户类与策略类的 “传话筒” ,给策略类传递策略类要处理的数据参数,经常也把自己当做参数传递给策略类。上下文类中提供一个接口,用于调用具体策略子类中实现的算法接口。
4、具体策略子类和上下文类互相调用完成任务是使用策略模式进行设计的通常做法
杂项:软件设计模式