随笔分类 - 设计模式
摘要:迭代器模式 迭代器分类内部迭代器外部迭代器 总结 迭代器模式是指提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。迭代器模式可以把迭代的过程从业务逻辑中分离出来,在使用迭代器模式之后,即使不关心对象的内部构造,也可以按顺序访问其中的每个元素。 迭代器分类 内部迭代器 内部
阅读全文
摘要:代理模式 代理的意义代理的分类虚拟代理缓存代理 代理模式的特点总结 代理模式是为一个对象提供一个代用品或占位符,以便控制对它的访问。 代理的意义 为了说明代理的意义,下面我们引入一个面向对象设计的原则——单一职责原则。 单一职责原则指的是,就一个类(通常也包括对象和函数等)而言,应该仅有一个引起它变
阅读全文
摘要:策略模式 策略模式的定义是: 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。 例子: 计算奖金:根据绩效不同,年终奖金计算不同 将不变的部分和变化的部分隔开是每个设计模式的主题,策略模式也不例外,策略模式的目的就是将算法的使用与算法的实现分离开来。 一个基于策略模式的程序至少由两部
阅读全文
摘要:单例模式 不透明单例模式透明单例模式代理实现单例模式关于JS中的单例模式的说明使用命名空间使用闭包封装私有变量 惰性单例 单例模式的定义是: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 单例模式的核心是确保只有一个实例,并提供全局访问 不透明单例模式 例子: function Singl
阅读全文