随笔分类 -  设计模式

C++ DESIGN PATTERNS
迭代器模式
摘要:迭代器模式(Iterator) ** 迭代器模式** 是一种行为设计模式, 让你能在不暴露集合底层表现形式 (列表、 栈和树等) 的情况下遍历集合中所有的元素。 😕 问题 大部分集合使用简单列表存储元素。 但有些集合还会使用栈、 树、 图和其他复杂的数据结构。 无论集合的构成方式如何, 它都必须提 阅读全文

posted @ 2021-05-25 11:51 Ultraman_X 阅读(76) 评论(0) 推荐(0) 编辑

命令模式
摘要:命令模式 使用场景 问题 😟 假如你正在开发一款新的文字编辑器, 当前的任务是创建一个包含多个按钮的工具栏, 并让每个按钮对应编辑器的不同操作。 你创建了一个非常简洁的 按钮类, 它不仅可用于生成工具栏上的按钮, 还可用于生成各种对话框的通用按钮。尽管所有按钮看上去都很相似, 但它们可以完成不同的 阅读全文

posted @ 2021-05-24 16:06 Ultraman_X 阅读(87) 评论(0) 推荐(0) 编辑

策略模式
摘要:策略模式 策略是一种行为设计模式, 它将一组行为转换为对象, 并使其在原始上下文对象内部能够相互替换。原始对象被称为上下文, 它包含指向策略对象的引用并将执行行为的任务分派给策略对象。 为了改变上下文完成其工作的方式, 其他对象可以使用另一个对象来替换当前链接的策略对象。 应用场景 一天, 你打算为 阅读全文

posted @ 2021-05-24 15:28 Ultraman_X 阅读(45) 评论(0) 推荐(0) 编辑

桥接模式
摘要:桥接模式 桥接是一种结构型设计模式, 可将业务逻辑或一个大类拆分为不同的层次结构, 从而能独立地进行开发。 场景 这样一个问题: 客户给了你一个需求,于是使用一个类来实现(A); 客户需求变化,有两个算法实现功能,于是改变设计,我们通过一个抽象的基类,再定义两个具体类实现两个不同的算法(A1和A2) 阅读全文

posted @ 2021-05-24 15:26 Ultraman_X 阅读(55) 评论(0) 推荐(0) 编辑

适配器模式
摘要:适配器模式 应用场景 当你希望使用某个类, 但是其接口与其他代码不兼容时, 可以使用适配器类。 实现方式 确保至少有两个类的接口不兼容 声明客户端接口, 描述客户端如何与服务交互。 创建遵循客户端接口的适配器类。 所有方法暂时都为空。 在适配器类中添加一个成员变量用于保存对于服务对象的引用。 通常情 阅读全文

posted @ 2021-05-17 19:08 Ultraman_X 阅读(52) 评论(0) 推荐(0) 编辑

生成者模式
摘要:生产器模式 应用场景: 假设你的构造函数中有十个可选参数, 那么调用该函数会非常不方便; 因此, 你需要重载这个构造函数, 新建几个只有较少参数的简化版。 但这些构造函数仍需调用主构造函数, 传递一些默认数值来替代省略掉的参数。生成器模式让你可以分步骤生成对象, 而且允许你仅使用必须的步骤。 应用该 阅读全文

posted @ 2021-05-17 16:35 Ultraman_X 阅读(64) 评论(0) 推荐(0) 编辑

抽象工厂模式
摘要:抽象工厂模式 应用场景: 例如: 假设你正在开发一款家具商店模拟器。 你的代码中包括一些类, 用于表示: 1.系列相关产品, 例如 椅子Chair 、 ​ 沙发Sofa和 咖啡桌Coffee­Table 。 2.系列产品的不同变体。 例如, 你可以使用 现代Modern 、 ​ 维多利亚Victor 阅读全文

posted @ 2021-05-14 16:30 Ultraman_X 阅读(88) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示