设计模式
懒笔头
这个作者很懒,什么都没留下…
展开
-
设计模式的征途—4.抽象工厂(Abstract Factory)模式
上一篇的工厂方法模式引入了工厂等级结构,解决了在原来简单工厂模式中工厂类职责太重的原则,但是由于工厂方法模式的每个工厂只生产一类产品,可能会导致系统中存在大量的工厂类,从而增加系统开销。那么,我们应该怎么来重构?似乎,我们可以考虑将一些相关的产品组成一个“产品族”,由同一个工厂来统一生产,这就是本次将要学习的抽象工厂模式的基本思想。 一、界面皮肤库的初始设计 M公司IT开发部接到一个开发任...转载 2019-12-26 13:34:11 · 111 阅读 · 0 评论 -
设计模式的征途—3.工厂方法(Factory Method)模式
上一篇的简单工厂模式虽然简单,但是存在一个很严重的问题:当系统中需要引入新产品时,由于静态工厂方法通过所传入参数的不同来创建不同的产品,这必定要修改工厂类的源代码,将违背开闭原则。如何实现新增新产品而不影响已有代码?工厂方法模式为此应运而生。 一、简单工厂版的日志记录器 1.1 软件需求说明 Requirement:M公司欲开发一个系统运行日志记录器(Logger),该记录器可以通...转载 2019-12-26 13:15:21 · 99 阅读 · 0 评论 -
设计模式的征途—1.单例(Singleton)模式
单例模式属于创建型模式的一种,创建型模式是一类最常用的设计模式,在软件开发中应用非常广泛。创建型模式将对象的创建和使用分离,在使用对象时无需关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。每一个创建型模式都在视图回答3个问题:3W -> 创建什么(What)、由谁创建(Who)和何时创建(When)。 本篇是创建型模式的第一篇,也是最简单的一个设计模式,虽然简单,但是...转载 2019-12-26 12:36:15 · 111 阅读 · 0 评论 -
设计模式的征途—2.简单工厂(Simple Factory)模式
工厂模式是最常用的一种创建型模式,通常所说的工厂模式一般是指工厂方法模式。本篇是是工厂方法模式的“小弟”,我们可以将其理解为工厂方法模式的预备知识,它不属于GoF 23种设计模式,但在软件开发中却也应用地比较频繁。此外,工厂方法模式还有一位“大哥”—抽象工厂模式,会在后面进行介绍。 一、从一个图表库谈起 M公司想要基于C#语言开发一套图表库,该图表库可以为应用系统提供各种不同外观的图...转载 2019-12-26 12:49:23 · 166 阅读 · 0 评论