![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
设计模式
梅杏柿
这个作者很懒,什么都没留下…
展开
-
单例模式
单例模式最常用的设计模式之一,保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。实现思路:私有化它的构造函数,以防止外界创建单例类的对象;使用类的私有静态指针变量指向类的唯一实例,并用一个公有的静态方法获取该实例。懒汉模式:即非常懒,不用的时候不去初始化,所以在第一次被使用时才进行初始化(实例的初始化放在getinstance函数内部)经典的线程安全懒汉模式,使用双检测锁模式(p == NULL检测了两次)利用局部静态变量实现线程安全懒汉模式饿汉模式:即迫不及待,在原创 2021-04-06 21:49:15 · 68 阅读 · 0 评论 -
策略模式
策略模式+简单工厂它定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。策略模式和简单工厂模式很像。不知道自己能不能分辨清晰。以计算器为例。简单工厂模式和策略模式中:都需要设计抽象运算类,具体的加减乘除子类。区别在客户端中简单工厂模式:客户端需要接受一个具体的子类,同时还需要知道子类的方法,自己通过子类的方法来得到结果。策略模式:客户端需要接受的是一个包含子类的context类和一个context的方法,通过传入参数,context中会原创 2021-02-26 16:58:00 · 56 阅读 · 0 评论 -
设计模式
设计模式分为创建型、结构型和行为型。OO模式的原则:单一职责原则( Single Responsible Principle,SRP)就一个类而言,应该仅有一个引起它变化的原因。所以不能让一个类承担过的职责。否则当耦合的职责过多时, 一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。软件设计真正要做的许多内容,就是发现职责并把那些职责相互分离。 如果你能够想到多余一个的动机去改变一个类,那么这个类就具有多余一个的职责。类就是现实的抽象,一般来说类的命名就代表了该类的属性和职责了。开闭原原创 2021-02-26 15:34:14 · 48 阅读 · 0 评论