设计模式 设计模式(十六):装饰器模式(Decorator) 装饰器模式 又称 包装模式。装饰模式以对客户透明的方式,在不改变对象结构的情况下,可以动态地扩展其功能。 装饰器模式是继承关系的一个替代方案,可以在不使用创造更多子类的情况下,扩展对象的功能。 2021-02-23 浏览(59) 评论(0) 阅读全文
设计模式 设计模式(十五):策略模式(Strategy Pattern)实际应用 **策略模式(Strategy Pattern)**:定义一系列算法(算法家族),并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。 使用了策略模式,在系统设计层面是满足 **里氏替换原则** 和 **开放封闭原则** 的,每个算法可以相互替换,在不修改已有算法的情况下易于扩展。 2020-12-09 浏览(180) 评论(0) 阅读全文
设计模式 设计模式(十四):模版方法模式(Template Method Pattern) 模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 2020-11-18 浏览(228) 评论(0) 阅读全文
设计模式 设计模式(十三):适配器模式(Adapter) 适配器模式(Adapter Pattern) :将一个接口转换成客户希望的另一个接口,使原本因不兼容而无法一起工作的那些接口能在一起工作。其别名为包装器(Wrapper)。 2020-11-17 浏览(128) 评论(0) 阅读全文
设计模式 设计模式(十二):责任链模式(Chain of Responsibility) 责任链模式(Chain of Responsibility)是一种对象行为模式。在责任链模式中,多个对象由每一个对象对其下家的引用而连接起来形成一条链。 2020-11-17 浏览(162) 评论(0) 阅读全文
设计模式 设计模式(十一):观察者模式(Observer Pattern) 观察者模式 又称为 发布 / 订阅(Publish / Subscribe)模式、源 / 监听模式(Source / Listener)。观察者模式定义对象之间的一对多的依赖关系, 一个对象的行为发生改变,所有依赖于它的对象的行为也发生改变。观察者模式是对象的行为模式。 2020-11-17 浏览(172) 评论(0) 阅读全文
设计模式 设计模式(十):状态模式(State Pattern) 状态这个词较好理解,生活中很多事物都会有状态,有不同的状态,状态是可转变迁移的。例如 人有精神状态、身体会有疲劳状态或打鸡血状态。 2020-10-15 浏览(179) 评论(0) 阅读全文
设计模式 设计模式(九):策略模式(Strategy Pattern) 软件开发过程中,当实现某一个功能可能需要支持多种算法或者策略(方案),例如电商促销,可以采用直接打折、满减计算、抵扣券、积分兑换 等方式,可以灵活地根据促销场景选择相应的促销方案(策略)。 每种策略都有自己的算法,选择具体的算法(策略)由客户端决定。策略模式可以将责任与算法分离,使得算法扩展更方便,易维护。 2020-10-14 浏览(65) 评论(0) 阅读全文
设计模式 设计模式(八):原型模式(Prototype Pattern) 系统中可能需要创建大量相同或相似对象,如果用构造方法创建则会比较耗时耗费资源,这时就可以使用 **原型模式** ,生成对象更高效。 原型模式 就像复印机,可以复印多份相同的;像孙悟空的猴毛,拨下一吹就变出很多个孙悟空一样简单快捷。 2020-10-14 浏览(55) 评论(0) 阅读全文
设计模式 设计模式(七):建造者模式(Builder Pattern) 建造者模式 是将一个复杂的对象分解成多个简单对象,然后按一定顺序构建而成。将变与不变相分离,即产品的组成部件是不变的,组建顺序是稳定的,但每一个部件是可以灵活选择的。用户只需指定复杂对象的类型和部件就可以完成构建,不需要知道内部的具体构建细节。 2020-10-14 浏览(67) 评论(0) 阅读全文