随笔分类 - 设计模式

摘要:今天介绍原型模式,我自己偷偷给它命名为克隆模式。因为原型模式的意图是通过复制一个现有的对象来生成新的对象,而不是通过实例化的方式。 一、原型模式概念 原型模式(Prototype Pattern):使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式。 该接 阅读全文
posted @ 2017-11-27 15:41 平凡希 阅读(2035) 评论(0) 推荐(1) 编辑
摘要:单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 举个常见的单例模式例子,我们日常使用的电脑上都有一个回收站,在整个操作系统中,回收站只能有一个实例,整个系统都使用这个唯一的实例,而且回收站自行提供 阅读全文
posted @ 2017-11-09 16:33 平凡希 阅读(3434) 评论(2) 推荐(0) 编辑
摘要:接着上一篇工厂方法模式说,现在披萨店生意很好,除了卖披萨,又卖汉堡,并且为了适用不同的客户群体,增加了单人套餐和家庭套餐。这种情况下多了一个产品汉堡,已经不适合用工厂方法模式了,这时候就要用到更加抽象化的抽象工厂模式来满足这个系统。 一、抽象工厂模式概念 抽象工厂模式是所有形态的工厂模式中最为抽象和 阅读全文
posted @ 2017-11-06 16:40 平凡希 阅读(1054) 评论(0) 推荐(0) 编辑
摘要:上一篇介绍简单工厂模式的时候提到它对开闭原则支持的不够,因为如果有新的产品加入到系统中去,就需要修改工厂类,就违反了开闭原则了,这次介绍的工厂方法模式在保持简单工厂模式优点的前提下,还满足了开闭原则,关键在于它的多态性。 一、工厂方法模式概念 工厂方法模式是类的创建模式,又叫做虚拟构造子(Cirtu 阅读全文
posted @ 2017-10-09 15:38 平凡希 阅读(1148) 评论(0) 推荐(0) 编辑
摘要:介绍简单工厂模式之前先通过一个披萨项目的例子来引出问题,然后给出简单工厂模式这种解决方案,然后随着披萨项目的不断扩展,遇到新的问题,引出工厂方法模式,然后又遇到新的问题,引出最终解决方案,抽象工厂模式。 一、披萨项目介绍 比如一个披萨店 ,店长一名,目前卖两种口味披萨,GreekPizza和Chee 阅读全文
posted @ 2017-09-19 15:58 平凡希 阅读(1074) 评论(0) 推荐(1) 编辑