桥接模式()
**意图:**将抽象部分与其实现部分分离 , 使它们都可以独立地变化 。
题目选项描述
1、类的抽象和其实现之间不希望有一个固定的绑定关系
2、不希望在抽象和它的实现部分之间有一个固定的绑定关系
适用性
1、不希望在抽象和它的实现部分之间有一个固定的绑定关系 。例如 , 这种情况可能是B为 , 在程序运行时刻实现部分应可以被选择或者切换 。
2、类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充 。这是 模式传得开发者可以对不同的抽象接口和实现部分进行组合 , 并分别对它们进行扩充 。
3、对一个抽象的实现部分的修改应对客户不产生影响 , 即客户代码不必重新编译 。
4、(C++)想对客户完全隐藏抽象的实现部分 。
5、有许多类要生成的类层次结构 。
6、想在多个对象间共享实现(可能使用引用计数) , 但同时要求客户并不知道这一点 。
组合模式()
**意图:**将对象组合成树型结构以表示“部分-整体”的层次结构 。使得用户对单个对象和组合对象的使用具有一致性 。
题目选项描述
表示对象的部分-整体层次结构
装饰器模式()
**意图:**动态地给一个对象添加一些额外的职责 。就增加功能而言 , 模式比生成子类更加灵活 。
题目选项描述
1、将一个对象加以包装以提供一些额外的行为
2、在不影响其他对象的情况下 , 以动态、透明的方式给单个对象添加职责
3、动态地给一个对象添加一些额外的职责
适用性
1、在不影响其他对象的情况下 , 以动态、透明的方式给单个对象添加职责 。
2、处理那些可以撤销的职责 。
3、当不能采用生成子类的方式进行扩充时 。一种情况是 , 可能有大量独立的扩展 , 为支持每一种组合将产生大量的子类 , 使得子类数目呈爆炸性增长 。另一种情况可能是 , 由于类定义被隐藏 , 或类定义不能用于生成子类 。
外观模式()
**意图:**为子系统中的一组接口提供一个一致的界面 , 模式定义了一个高层接口 , 这个接口使得这一子系统更加容易使用 。
题目选项描述
1、将一系列对象加以包装以简化其接口
2、需要为一个复杂子系统提供一个简单接口
适用性
1、要为一个复杂子系统提供一个简单接口时 , 子系统往往因为不断演化而变得越来越复杂 。大多数模式使用时都会产生更多更小的类 , 这使得子系统更具有可重用性 , 也更容易对子系统进行定制,但也给那些不需要定制子系统的用户带来一些使用上的困难 。可以提供一个简单的默认视图 , 这一视图对大多数用户来说已经足够 , 而那些需要更多的可定制性的用户可以越过层 。
2、客户程序与抽象类的实现部分之间存在着很大的依赖性 。引入将这个子系统与客户以及其他的子系统分离 , 可以提高子系统的独立性和可移植性 。
3、当需要构建一个层次结构的子系统时 , 使用模式定义子系统中每层的入口点 。如果子系统之间是相互依赖的 , 则可以让它们仅通过进行通信 , 从而简化了它们之间的依赖关系 。
享元模式()
**意图:**运用共亨技术有效地支持大量细粒度的对象 。
题目选项描述
因使用大量的对象而造成很大的存储开销时 , 进行对象共享,以减少对象数量从而达到较少的内存占用并提升性能 。
- 8种 单例设计模式
- 2022年《建筑》考点:钢筋混凝土装配式工程
- 二 设计模式:观察者模式
- 设计模式——观察者众
- Android设计模式之观察者模式
- 班主任:初一上册千呼万唤的“政史地生”期末考点+思维导图+答案 历史之最七年级上册
- 会考地理考点15中国的自然环境 中国之最地理考点
- 小升初暑假必背:七年级上册历史,单元思维导图+必背考点总结 七上历史之最最全
- 掌握这3个方法,初一地理轻松满分|七年级119个核心考点 上册 初一地理世界之最
- 「公基上岸卡」公基高频考点之地理国情常识大合集 公基中国之最地理