
设计模式
文章平均质量分 87
董浩
产品笔记
展开
-
单件模式(Singleton Pattern)
概述 Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问点。那么绕过常规的构造器(new),提供一种机制来保证一个类只有一个实例就是单件模式了。客户程序员在调用这个类时,是不会考虑这个类是否只能有一个实例等问题的,所以,这应该是类设计者的责任,而不是类使用者的责任。 意图 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 模型图 逻辑模型图:原创 2007-06-24 23:06:00 · 2017 阅读 · 2 评论 -
原型模式(Prototype Pattern)
原型模式(Prototype Pattern)概述原型模式的用意是:通过给出一个原型对象来指明所要创建的对象类型,然后用复制这个原型对象的办法创建出更多的同类型对象。结构图Prototype模式结构图客户(Client)角色:客户类提出创建对象的请求。抽象原型(Prototype)角色:这是一个抽象角色,通常由一个C#接口或抽象类实现。此角色给原创 2007-07-01 20:09:00 · 3841 阅读 · 0 评论 -
适配器模式(Adapter)
适配器模式(Adapter) 一句话什么是Adapter?Adapter就是一个转换器,比如一个电源插头可以让一个两插头的电器使用墙壁上的三插头电源。这次的介绍将不写代码,虽然设计模式是为了代码而生,但我认为这是一种看世界的方法,不仅仅是一种代码的设计方式,所以这次的适配器模式因为比较简单和容易理解就不再写代码解释,但适配器的思想能用在软件设计、工程建筑、日常生活等待方面...原创 2007-07-14 11:58:00 · 5722 阅读 · 0 评论 -
桥接模式(Bridge Pattern)
一句话将抽象和行为划分开来,各自独立,但能动态的组合。结构图图1 Bridge模式结构图生活中的例子比如,一杯咖啡为例,子类实现类为四个:中杯加奶、大杯加奶、中杯不加奶、大杯不加奶。这四个类实际是两个角色的组合:抽象和行为,其中抽象为:中杯和大杯;行为为:加奶不加奶(如加橙汁加苹果汁),这就是Bridge模式。桥接模式解说以上面提到的咖啡 为例. 我们原来打算原创 2007-07-17 12:08:00 · 2142 阅读 · 3 评论 -
设计模式:概要
设计模式分为三类:1.创建型;2.结构型;3.行为型。创建型:Abstract Factory(抽象工厂)——对象创建型模式 Builder(生成器)——对象创建型模式 Factory Method(工厂方法)——对象创建型模式 Prototype(原型)——对象创建型模式 Singleton(单件)——对象创建型模式 结构型: Adapter(适配原创 2007-06-07 16:02:00 · 1892 阅读 · 0 评论 -
Abstract Factory(抽象工厂)
抽象工厂,最简单的设计模式,相信大家每天都在使用。 通俗点介绍,先从工厂模式开始。工厂模式,很简单,工厂就生产东西的地方。这里当然是生产对象了。在遥远原始社会,我们需要一个对象,都是new出来的,相当与自己动手做的。 比如 要一条鱼 Fish f1=new Fish();一条鱼就来了,现在有了工厂,鱼就来的容易了,Fish f1=Factory.getFish()原创 2007-06-07 16:45:00 · 2573 阅读 · 11 评论 -
Abstract Factory(抽象工厂) 2
因为上次没给代码,再次给Aragorn_Elessar 等朋友道个歉,我这里的环境是.net 1.1 用c#描述:问题先描述一下:我要一条鱼,现在地方有三个可以让我选择,一、菜市场;二、花鸟市场;三、钓鱼场;现在先定义鱼的类 public class Fish ...{ string fname;/原创 2007-06-10 13:26:00 · 1726 阅读 · 0 评论 -
常用正则式收集(增加中)
匹配中文字符的正则表达式: [/u4e00-/u9fa5]匹配双字节字符(包括汉字在内):[^/x00-/xff]匹配空白行的正则表达式:/n/s*/r匹配HTML标记的正则表达式:]*>.*?|匹配首尾空白字符的正则表达式:^/s*|/s*$匹配Email地址的正则表达式:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*匹配网址URL的正则表达式:[a-zA原创 2008-03-13 08:59:00 · 2824 阅读 · 0 评论