随笔分类 -  设计模式

摘要:解释器模式是什么 解释器是一种行为型设计模式,指给分析对象定义一个语言,并定义该语言的文法表示,再设计一个解析器来解释语言中的句子。也就是说,用编译语言的方式来分析应用中的实例。这种模式实现了文法表达式处理的接口,该接口解释一个特定的上下文。 为什么用解释器模式 在软件开发中,会遇到有些问题多次重复 阅读全文
posted @ 2022-04-25 22:54 EthanWell 阅读(159) 评论(0) 推荐(0) 编辑
摘要:访问者模式是什么 访问者是一种行为型设计模式, 允许你在不修改已有代码的情况下向已有类层次结构中增加新的行为。 为什么用访问者模式 访问者模式建议将新行为放入一个名为访问者的独立类中,而不是试图将其整合到已有类中。现在需要执行操作的原始对象将作为参数被传递给访问者中的方法, 让方法能访问对象所包含的 阅读全文
posted @ 2022-04-25 21:28 EthanWell 阅读(119) 评论(0) 推荐(0) 编辑
摘要:状态模式是什么 状态模式是一种行为设计模式,让你能在一个对象的内部状态变化时改变其行为,使其看上去就像改变了自身所属的类一样。 为什么要用状态模式 如果对象需要根据自身当前状态进行不同行为,同时状态的数量非常多且与状态相关的代码会频繁变更的话,可使用状态模式。相似状态和基于条件的状态机转换中存在许多 阅读全文
posted @ 2022-04-24 21:59 EthanWell 阅读(122) 评论(0) 推荐(0) 编辑
摘要:中介模式是什么 中介者模式是一种行为设计模式,用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以相互独立地改变它们之间地交互。 为什么用中介模式 中介者模式建议你停止组件之间的直接交流并使其相互独立。这些组件必须调用特殊的中介者对象,通过中介者对象重 阅读全文
posted @ 2022-04-23 23:05 EthanWell 阅读(108) 评论(0) 推荐(0) 编辑
摘要:备忘录模式是什么 备忘录模式是一种行为设计模式, 允许在不暴露对象实现细节的情况下保存和恢复对象之前的状态。 为什么要用备忘录模式 当你需要创建对象状态快照来恢复其之前的状态时,可以使用备忘录模式。或者当直接访问对象的成员变量、获取器或设置器将导致封装被突破时, 可以使用该模式。 备忘录模式怎么实现 阅读全文
posted @ 2022-04-23 13:16 EthanWell 阅读(100) 评论(0) 推荐(0) 编辑
摘要:迭代器模式是什么 迭代器模式是一种行为设计模式, 让你能在不暴露集合底层表现形式 (列表、 栈和树等) 的情况下遍历集合中所有的元素。 为什么用迭代器模式 当集合背后为复杂的数据结构, 且你希望对客户端隐藏其复杂性时(出于使用便利性或安全性的考虑),可以使用迭代器模式。迭代器封装了与复杂数据结构进行 阅读全文
posted @ 2022-04-19 22:28 EthanWell 阅读(121) 评论(0) 推荐(0) 编辑
摘要:策略模式是什么 策略模式是一种行为设计模式, 它能让你定义一系列算法, 并将每种算法分别放入独立的类中, 以使算法的对象能够相互替换。 为什么用策略模式 当你想使用对象中各种不同的算法变体,并希望能在运行时切换算法时,可使用策略模式。策略模式让你能将不同行为抽取到一个独立类层次结构中, 并将原始类组 阅读全文
posted @ 2022-04-17 17:04 EthanWell 阅读(143) 评论(0) 推荐(0) 编辑
摘要:责任链模式是什么 责任链模式是一种行为设计模式, 允许你将请求沿着处理者链进行发送。 收到请求后, 每个处理者均可对请求进行处理, 或将其传递给链上的下个处理者。 为什么要用责任链模式 如果有多个对象可以处理同一个请求,具体哪个对象处理该请求由运行时刻自动确定。或者所需处理者及其顺序必须在运行时进行 阅读全文
posted @ 2022-04-16 15:17 EthanWell 阅读(96) 评论(0) 推荐(0) 编辑
摘要:命令模式是什么 命令模式是一种行为型设计模式,它可以将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。 为什么用命令模式 在软件开发系统中,“方法的请求者”与“方法的实现者”之间经常存在紧密的耦合关 阅读全文
posted @ 2022-04-13 22:21 EthanWell 阅读(101) 评论(0) 推荐(0) 编辑
摘要:模板方法模式是什么 模版方法模式是设计模式中的行为型的一种模式,它在基类中定义了一个算法的框架,允许子类在不修改结构的情况下重写算法的特定步骤。 为什么要用模板方法模式 模板方法将整个算法转换为一系列独立的步骤,以便子类能对其进行扩展,同时还可让超类中所定义的结构保持完整。或者当多个类的算法步骤一致 阅读全文
posted @ 2022-04-12 22:27 EthanWell 阅读(116) 评论(0) 推荐(0) 编辑
摘要:观察者模式是什么 观察者模式是一种行为设计模式, 允许一个对象将其状态的改变通知其他对象。观察者模式允许你定义一种订阅机制, 可在对象事件发生时通知多个观察者。 为什么用观察者模式 当一个对象状态改变时需要改变其他对象,可使用观察者模式。它定义对象间的一对多的依赖关系,当一个对象的状态发生改变时,所 阅读全文
posted @ 2022-04-11 21:11 EthanWell 阅读(103) 评论(0) 推荐(0) 编辑
摘要:抽象工厂模式是什么 抽象工厂是一种创建型设计模式,用于产品族的构建。它能创建一系列相关的对象, 而无需指定其具体类。 为什么用抽象工厂模式 在工厂方法模式中具体工厂负责生产具体的产品,每一个具体工厂对应一种具体产品,工厂方法也具有唯一性,一般情况下,一个具体工厂中只有一个工厂方法。但是有时候我们需要 阅读全文
posted @ 2022-04-10 10:54 EthanWell 阅读(96) 评论(0) 推荐(0) 编辑
摘要:工厂方法模式是什么 工厂方法模式是一种创建型设计模式, 其在父类中提供一个创建对象的方法, 允许子类决定实例化对象的类型。 为什么用工厂方法模式 在新增一个产品时,不用去修改已有的代码。工厂方法将创建产品的代码与实际使用产品的代码分离,从而能在不影响其他代码的情况下扩展产品创建部分代码。例如,如果需 阅读全文
posted @ 2022-04-04 17:14 EthanWell 阅读(104) 评论(0) 推荐(0) 编辑
摘要:享元模式是什么 享元模式:是一种结构型设计模式,它允许你在消耗少量的内存的情况下支持大量的对象。享元模式通过共享多个对象的部分状态来实现上述功能。即是享元模式会将不同对象的相同功能缓存以节省内存。 为什么用享元模式 如果程序中有很多相似对象,这时候你就可以用享元模式来节约内存。 享元模式怎么实现 这 阅读全文
posted @ 2022-04-03 22:40 EthanWell 阅读(73) 评论(0) 推荐(0) 编辑
摘要:组合模式是什么 组合模式:是一种结构型设计模式, 你可以使用它将对象组合成树状结构, 并且能像使用独立对象一样使用它们。 为什么用组合模式 如果你需要实现树状对象结构,可以使用组合模式。确保应用的核心模型能够以树状结构表示。 尝试将其分解为简单元素和容器。 记住,容器必须能够同时包含简单元素和其他容 阅读全文
posted @ 2022-04-01 22:47 EthanWell 阅读(59) 评论(0) 推荐(0) 编辑
摘要:桥接模式是什么 桥接模式:桥接是一种结构型设计模式, 可将业务逻辑或一个大类拆分为不同的层次结构, 从而能独立地进行开发。 为什么用桥接模式 对于两个独立变化的维度,使用桥接模式再适合不过了. 桥接模式怎么实现 这里是将computer和printer分成两层,用接口的方式把强耦合转化为弱耦合。这两 阅读全文
posted @ 2022-03-31 21:27 EthanWell 阅读(153) 评论(0) 推荐(0) 编辑
摘要:代理模式是什么 代理模式是一种结构型设计模式, 让你能提供真实服务对象的替代品给客户端使用。 代理接收客户端的请求并进行一些处理 (访问控制和缓存等), 然后再将请求传递给服务对象。 为什么用代理模式 在某些情况下客户类不想或者不能访问目标对象,这时候就可以使用代理类访问。 代理模式怎么实现 pac 阅读全文
posted @ 2022-03-30 21:45 EthanWell 阅读(92) 评论(0) 推荐(0) 编辑
摘要:装饰器模式是什么 是一种结构型设计模式,它允许你将对象放入包含行为的特殊封装对象中来为原对象绑定新的行为。由于目标对象和装饰器遵循同一接口,所以你可以对目标进行多次装饰,最后结果为所有装饰器叠加的行为。 为什么用装饰器模式 需要动态的给一个对象增加功能,并且可以动态的撤销的时候。当系统需要添加新的功 阅读全文
posted @ 2022-03-26 14:43 EthanWell 阅读(96) 评论(0) 推荐(0) 编辑
摘要:外观模式是什么 外观模式是一种结构性设计模式,它能为程序库、框架或者其他复杂的子系统提供一个统一的高层界面,使子系统更容易使用。外观模式就是聚合多个接口实现,对外只暴露单个接口。隐藏子系统的复杂性。调用方不关心实现步骤。 为什么要用外观模式 当子系统提供的功能很多,而我们子需要多个子系统中很少的几个 阅读全文
posted @ 2022-03-22 21:25 EthanWell 阅读(207) 评论(0) 推荐(0) 编辑
摘要:适配器模式是什么 适配器模式(Adapter Design Pattern)适配器是一种结构型设计模式, 用来将不兼容的接口转换为兼容的接口。适配器可担任两个对象间的转换器, 它会接收对于一个对象的调用, 并将其转换为另一个对象可识别的格式和接口。 为什么用适配器模式 两个对象直接由于格式或者接口不 阅读全文
posted @ 2022-03-21 21:25 EthanWell 阅读(91) 评论(0) 推荐(0) 编辑

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