![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
不吃辣。
这个作者很懒,什么都没留下…
展开
-
设计模式:观察者
定义与类型定义:定义了对象之间的一对多依赖,让多个观察者对象同时监听某一主题对象,当主题对象发生变化时,它的所有依赖者(观察者)都会收到通知并更新类型:行为型适用场景关联行为场景,建立一套触发机制优点观察者和被观察者之间建立一个抽象的耦合观察者模式支持广播通信缺点观察者之间有过多的细节依赖,提高时间消耗及程序复杂度使用要得当,要避免循环调用Coding...原创 2020-06-21 08:24:38 · 140 阅读 · 0 评论 -
设计模式:原型
定义与类型定义:指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象特点:不需要知道任何创建的细节,不调用构造函数类型:创建型适用的场景类初始化消耗较多资源new产生的一个对象需要非常繁琐的过程(数据准备、访问权限等)构造函数比较复杂循环体中生产大量对象时优点原型模式性能上比直接new一个对象性能高简化创建过程缺点必须配备克隆方法对克隆复杂对象或对克隆出的对象进行复杂改造时,容易引入危险深拷贝、浅拷贝要运用得当扩展深克隆浅克隆...原创 2020-06-07 23:22:36 · 128 阅读 · 0 评论 -
设计模式:单例
定义与类型定义:保证一个类仅有一个实例,并提供一个全局访问点类型:创建型适用场景想确保任何情况下都绝对只有一个实例优点在内存里只有一个实例,减少了内存开销可以避免对资源的多重占用设置全局访问点,严格控制访问缺点没有接口,扩展比较困难重点私有构造器线程安全延迟加载序列化和反序列安全反射(防止反射攻击)单例相关设计模式工厂模式享元模式Coding懒汉式的三种写法线程不安全 final class Singleton { private static原创 2020-06-06 16:05:16 · 137 阅读 · 0 评论 -
设计模式:建造者
定义与类型定义:将一个复杂对象的构建和它的表示分离,使同样的构建过程可以表示创建不同的表示用户只需指定需要建造的类型就可以得到它们,建造过程及细节不需要知道类型:创建型适用场景如果一个对象有非常复杂的内部结构(很多的属性)想把复杂对象的创建和使用分离优点封装性好,创建和使用分离扩展性好、建造类之间独立、一定程度上解耦缺点产生多余的builder对象产品内部发生变化,建造者都要修改,成本较大Coding和工厂模式区别:建造者模式注重于方法的调用顺序,工厂模式注重于创建产原创 2020-06-05 22:15:27 · 124 阅读 · 0 评论 -
设计模式:抽象工厂
定义与类型定义:抽象工厂模式提供了一个创建一系列相关或相互依赖对象的接口无须指定它们具体的类类型:创建型抽象工厂可以将一组具有同一主题单独的工厂封装起来,在使用中客户端程序需要创建抽象工厂的具体实现,使用抽象工厂作为接口,来创建这一个主题的对象适用场景客户端(应用层)不依赖于产品类实例如何被创建、实现等细节强调一系列相关的产品对象(属于同一产品族)一起使用创建对象需要大量重复的代码提供了一个产品类的库,所有的产品以同样的接口出现,从而使客户端不依赖于具体的实现优点具体产品在应原创 2020-06-04 19:08:51 · 205 阅读 · 0 评论 -
设计模式:工厂方法
定义与类型定义:定义一个创建对象的接口,但让实现这个接口的类来决定实例化那个类,工厂方法让类的实例化推迟到子类中进行类型:创建型适用场景创建对象需要大量重复的代码客户端(应用层)不依赖于产品类实例如何被创建、实现等细节一个类通过其子类来指定创建那个对象(利用面向对象的多态性和里氏替换原则)优点用户只需要关心所需产品对应的工厂,无需关心创建细节加入新产品符合开闭原则,提高可扩展性缺点类的个数容易过多,增加复杂度增加了系统的抽象性和理解难度...原创 2020-06-02 22:51:40 · 101 阅读 · 1 评论 -
设计模式:简单工厂
定义与类型定义:由一个工厂对象决定创建出哪一种“产品”类型类型:创建型,但不属于GOF23种设计模式适用场景工厂类负责创建的对象比较少客户端(应用层)只知道传入工厂类的参数,对于如何创建对象逻辑并不关心优点只需要传入一个正确的参数,就可以获取你所需要的对象,而无需知道其创建细节缺点工厂类的职责相对过重,增加新的产品,需要修改工厂类的判断逻辑,违背开闭原则无法形成基于继承的等级结构Coding对于GOF23中设计模式中,带工厂的只有抽象工厂和工厂方法两种模式package c原创 2020-06-01 23:01:36 · 112 阅读 · 0 评论 -
单例设计模式
什么是设计模式设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。使用设计模式的目的:为了代码可重用性、可维护性。设计模式通常也被成为GoF设计模式,GoF是“四人组”(Gang of Four)的缩写,《Design Patterns: Elements of Reusable Object-Oriented Software》(即后述《...原创 2019-06-24 18:16:25 · 90 阅读 · 0 评论