设计模式
专注于面向对象设计模式的学习
小贾-同志
每一个不曾起舞的日子都是对生命的辜负
展开
-
C++设计模式 | 工厂模式之抽象工厂模式详解
文章目录抽象工厂抽象工厂的优点抽象工厂的缺点 抽象工厂 提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。 抽象工厂模式比工厂模式更为复杂,就像上面提到的缺点一样,工厂模式和简单工厂模式要求产品子类必须要是同一类型的,拥有共同的方法,这就限制了产品子类的扩展。于是为了更加方便的扩展,抽象工厂模式就将同一类的产品子类归为一类,让他们继承同一个抽象子类,我们可以把他们一起视作一组,然...原创 2019-05-05 15:48:52 · 2105 阅读 · 0 评论 -
C++设计模式 | 工厂模式之工厂方法模式详解
文章目录工厂方法工厂方法的优点工厂方法的缺点 工厂方法 定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 既然每次都要判断,那就把这些判断都生成一个工厂子类,这样,每次添加产品子类的时候,只需再添加一个工厂子类就可以了。这样就完美的遵循了开放-封闭原则。但这其实也有问题,如果产品数量足够多,要维护的量就会增加,好在一般工厂子类只用来生成产品类,只要产品子...原创 2019-05-05 15:45:32 · 1201 阅读 · 0 评论 -
C++设计模式 | Observer 观察者模式详解
文章目录观察者模式介绍观察者模式的动机观察者模式解决什么问题观察者模式的使用场合观察者模式的结构和实现结构实现应用实例代码示例 观察者模式介绍 观察者模式的动机 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 观察者模式解决什么问题 一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。 观察者模式的使用场合 在以...原创 2019-05-04 21:05:39 · 1916 阅读 · 0 评论 -
设计模式的原则
文章目录什么是设计模式设计模式的原则(1)开闭原则(Open Close Principle)(2)里氏代换原则(Liskov Substitution Principle)(3)依赖倒转原则(Dependence Inversion Principle)(4)接口隔离原则(Interface Segregation Principle)(5)迪米特法则,又称最少知道原则(Demeter Prin...原创 2019-05-04 00:16:03 · 1154 阅读 · 0 评论 -
C++设计模式 | 工厂模式之简单工厂模式详解
文章目录设计模式设计模式的原则工厂模式的核心思想【1】简单工厂简单工厂的优点简单工厂的缺点【2】工厂方法工厂方法的优点工厂方法的缺点【3】抽象工厂抽象工厂的优点抽象工厂的缺点 设计模式 设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。 设计模式的原则 (1)开闭原则(Open Close Principle)...原创 2019-05-03 16:46:53 · 1507 阅读 · 0 评论 -
C++设计模式 | Singleton单例模式线程安全的懒汉模式、饿汉模式
文章目录什么是单例模式?单例模式的应用场景?单例模式的要点?懒汉模式饿汉模式 什么是单例模式? 单例模式,顾名思义就是一个类只能实例化一个对象,并提供一个访问它的全局访问点,该实例被所有程序模块共享。 单例模式的应用场景? 因为在设计或开发中,肯定会有这么一种情况,一个类只能有一个对象被创建,如果有多个对象的话,可能会导致状态的混乱和不一致。这种情况下,单例模式是最恰当的解决办法。它有很多种实现方...原创 2019-05-02 16:10:59 · 2573 阅读 · 0 评论