![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
西加加先生
博客首发https://mrleecn.cn/
展开
-
《大话设计模式》——模板方法模式
模板方法模式 模板方法(Template Method)模式的定义如下:定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。它是一种类行为型模式。 是实际开发中常用的设计模式。 应用场景 在面向对象程序设计过程中,常常会遇到这种情况:设计一个系统时知道了算法所需的关键步骤,而且确定了这些步骤的执行顺序,但某些步骤的具体实现还未知...原创 2020-03-04 17:54:42 · 397 阅读 · 0 评论 -
《大话设计模式》——原型模式
什么是原型模式 如果对象的创建成本比较大,而同一个类的不同对象之间差别不大(大部分字段都相同),在这种情况下,我们可以利用对已有对象(原型)进行复制(或者叫拷贝、克隆)的方式,来创建新对象,以达到节省创建时间的目的。这种基于原型来创建对象的方式就叫作原型设计模式,简称原型模式。 核心:拷贝(克隆) 应用场景 创建对象包含的申请内存、给成员变量赋值这一过程,本身并不会花费太多时间,对于大部分业务系统...原创 2020-02-28 18:26:29 · 203 阅读 · 0 评论 -
《大话设计模式》——工厂方法模式(Python版)
工厂方法模式:定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。 介绍 工厂方法模式,又称工厂模式、多态工厂模式和虚拟构造器模式,通过定义工厂父类负责定义创建对象的公共接口,而子类则负责生成具体的对象。 对比简单工厂模式 是对简单工厂模式的一个延伸,所以它们诞生的背景以及所解决的问题是大同小异。(不了解简单工厂模式的请看《大话设计模式》——简单工厂模式) 简单工厂模式 简单来说,简单...原创 2020-02-05 16:54:16 · 179 阅读 · 0 评论 -
用实例理解设计模式——代理模式(Python版)
代理模式:为其他对象提供一种代理以控制对这个对象的访问。 在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 代理模式分为: 静态代理 动态代理 由下面三部分组成: 抽象角色:通过接口或抽象类声明真实角色实现的业务方法。 代理角色:实现抽象角色,是真实角色的代理,通过真实角色的业务逻辑方法来实现抽象方法,并可以附加自己的操作。 真实...原创 2020-01-06 23:35:32 · 185 阅读 · 0 评论 -
《大话设计模式》——简单工厂模式(Python)
简单工厂模式(Simple Factory Pattern):是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类. 例: 使用Python设计一个控制台计算器,要求输入两个数和运算符号,得到运算结果。 1. 初学者写法 class Operation(object): def __init__(self): pass def conve...原创 2019-12-22 12:35:41 · 147 阅读 · 0 评论