
设计模式
相信天道酬勤的M1ng
这个作者很懒,什么都没留下…
展开
-
白话观察者模式
观察者模式(ObserverPattern)是一种行为型模式,它提供了一种定义对象之间一对多关系的方式。引顾名思义,观察者模式自然是需要有一些观察者(Observer)去"观察"被观察者(Subject)的行为,同时被观察者的状态(status)随时有可能发生改变,当这种改变发生的时候,被观察者需要去"通知"所有正在"观察自己"的观察者们。观察者和被观察者之间的这种关系也可以叫做"订阅——发布",所以观察者模式又叫做发布订阅模式。正文有一个博客平台(Subject)定期会推送文章,已经订阅过得QQ原创 2020-09-20 23:26:28 · 283 阅读 · 0 评论 -
白话适配器模式
适配器模式(AdapterPattern)属于结构型模式,提供了一种“使原本由于接口不兼容而不能一起工作的一批类,通过一个适配器进行"兼容"从而可以一起工作”的方式。引一个举烂的例子:家用电的电压 220V ,但是可以通过不同的变压器输出不同的电压;兼容型变压器也可以将不同的输入电压转换成相同的输出电压。适配器是比较好理解的,就是将不同的**适配者类(adaptee)通过同一个适配器(adapter)做出同样的动作,或者同一个适配者类(adaptee)通过不同的适配器(adapter)**做出不同的动原创 2020-09-14 21:39:26 · 287 阅读 · 0 评论 -
白话装饰器模式
装饰器模式(Decorator Pattern)提供了一种给对象灵活地、动态地添加额外功能的思路,装饰器模式是一种结构型模式。引日常开发中,经常需要对一个旧的类进行扩展,但是又希望遵循开闭原则不直接修改原本的类,于是我们可以创建一个子类并继承原类,并进行新增或者重写。如果扩展的次数不多,采用这种方式就可以方便快捷的完成扩展。但是这种继承的方式是静态的,会随着扩展次数的增多,子类越来越多的同时继承关系越来越复杂,并且不同版本之间的类严重耦合。经验和直觉告诉我们应该可以在 原有类 和 扩展 之间增加一层原创 2020-09-13 10:40:22 · 365 阅读 · 1 评论 -
简单通俗的工厂模式
工厂模式属于创建型模式,它提供了一种更加优雅的创建对象的方式,也是最常见的设计模式之一!引用户需要到 ”交通工具生产车间“ 去获取一种交通工具,用户可能要 “汽车“ 或 ”自行车“ 甚至是 “飞机”等。。。作为生产车间,只需要告诉用户一个获取其想要的交通工具的方法即可,至于交通工具是如何生产出来,用户并不需要去关心。正文简单工厂模式(静态工厂方法模式)用户可以使用工厂类提供的 get 静态方法并传入的不同参数,从而获取不同的实例,这些被创建的实例通常都具有共同的父类:实现起来也很比较容易,共原创 2020-09-01 22:45:42 · 272 阅读 · 0 评论 -
面试被问到 单例模式 有这一篇就够了!
单例模式是设计模式中最基础、最常用的,但是简单的实现下也隐藏着每一位 Coder 必须深入了解的知识。引:对象的创建过程public class MyClass { int num = 666; public static void main(String[] args) { MyClass myClass = new MyClass(); }}我们有一个类叫做 MyClass,建一个 Main 方法,只有一句 MyClass myClass原创 2020-08-27 23:04:54 · 307 阅读 · 0 评论