天道酬勤

博观而约取,厚积而薄发!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 30 下一页

2010年4月30日

摘要: 一、原型(Prototype)模式原型模式的用意是:通过给出一个原型对象来指明所要创建的对象类型,然后用复制这个原型对象的办法创建出更多的同类型对象。 从孙大圣的手段谈起 孙悟空在与黄风怪的战斗中,"使一个身外身的手段:把毫毛揪下一把,用口嚼得粉碎,望上一喷,叫声'变',变有百十个行者,都是一样得打扮,各执一根铁棒,把那怪围在空中。"换而言之,孙悟空可以根据自己的形象,复制出很多"身外身"来。 老... 阅读全文

posted @ 2010-04-30 11:27 Happy Coding 阅读(148) 评论(0) 推荐(0) 编辑

摘要: 一、建造者(Builder)模式建造者模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。 对象性质的建造 有些情况下,一个对象会有一些重要的性质,在它们没有恰当的值之前,对象不能作为一个完整的产品使用。比如,一个电子邮件有发件人地址、收件人地址、主题、内容、附录等部分,而在最起码的收件人地址未被赋值之前,这个电子邮件不能发出。 有些情况下... 阅读全文

posted @ 2010-04-30 11:25 Happy Coding 阅读(122) 评论(0) 推荐(0) 编辑

摘要: 一、单例(Singleton)模式单例模式的特点: 单例类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必须给所有其它对象提供这一实例。单例模式应用: 每台计算机可以有若干个打印机,但只能有一个Printer Spooler,避免两个打印作业同时输出到打印机。 一个具有自动编号主键的表可以有多个用户同时使用,但数据库中只能有一个地方分配下一个主键编号。否则会出现主键重复。二、Sing... 阅读全文

posted @ 2010-04-30 11:22 Happy Coding 阅读(165) 评论(0) 推荐(0) 编辑

摘要: 一、抽象工厂(Abstract Factory)模式抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。 为了方便引进抽象工厂模式,引进一个新概念:产品族(Product Family)。所谓产品族,是指位于不同产品等级结构,功能相关联的产品组成的家族。如图: 图中一共有四个产品族,分布于三个不同的产品等级结构中。只要指明一个产品所处的产品族以及它所属的等级结构,就可以唯一的确定这... 阅读全文

posted @ 2010-04-30 11:21 Happy Coding 阅读(168) 评论(0) 推荐(0) 编辑

摘要: 一、工厂方法(Factory Method)模式工厂方法(FactoryMethod)模式是类的创建模式,其用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。 工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了多态性,工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。 在工厂方法模式中,核心的工厂类不再负责所有产品的创建,而是将具体创建工作交给子类去做。这个核心类仅仅... 阅读全文

posted @ 2010-04-30 11:18 Happy Coding 阅读(158) 评论(0) 推荐(0) 编辑

摘要: 工厂模式专门负责将大量有共同接口的类实例化。工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式有以下几种形态: 简单工厂(Simple Factory)模式 工厂方法(Factory Method)模式 抽象工厂(Abstract Factory)模式 一、简单工厂(Simple Factory)模式Simple Factory模式根据提供给它的数据,返回几个可能类中... 阅读全文

posted @ 2010-04-30 11:17 Happy Coding 阅读(134) 评论(0) 推荐(0) 编辑

摘要: 三、依赖倒置原则(DIP) 依赖倒置(Dependence Inversion Principle)原则讲的是:要依赖于抽象,不要依赖于具体。 简单的说,依赖倒置原则要求客户端依赖于抽象耦合。原则表述: 抽象不应当依赖于细节;细节应当依赖于抽象;要针对接口编程,不针对实现编程。 反面例子:缺点:耦合太紧密,Light发生变化将影响ToggleSwitch。 解决办法一:将Light作成Abstra... 阅读全文

posted @ 2010-04-30 11:16 Happy Coding 阅读(126) 评论(0) 推荐(0) 编辑

摘要: 《人月神话》焦油坑、没有银弹* 软件腐化的原因:问题所在 设计目标----------------------------------------------------------------------------过于僵硬 可扩展性(新性能可以很容易加入系统)过于脆弱 灵活性(修改不会波及其它)复用率低 粘度过高 可插入性(新功能容易加入系统(气囊加入方向盘))* 提高系统可复用性的几点原则:... 阅读全文

posted @ 2010-04-30 11:15 Happy Coding 阅读(143) 评论(0) 推荐(0) 编辑

摘要: 本系列所有设计模式均为转载,原文地址:http://www.cnblogs.com/zhenyulu/articles/36058.html课本:《C#设计模式》,电子工业出版社,ISBN 7-5053-8979-3。33元含光盘。 课程内容:设计模式 来源:亚历山大的建筑模式、Gamma等人(1995)创作的"Design Patterns: Elements of Reusable Softw... 阅读全文

posted @ 2010-04-30 11:14 Happy Coding 阅读(180) 评论(0) 推荐(0) 编辑

摘要: 在技术特点、功能、架构等方面,MapGuide与其他WebGIS产品有什么区别?本文主要从此角度来介绍MapGuide的特性,以供参考。 本人选择了比较熟悉的几款WebGIS产品:MapServer(开源项目)、MapXtreme(MapInfo)、ArcIMS(ESRI)、ArcServer(ESRI),与MapGuide(开源项目)相比较。 由于本人未对国内的WebGIS产品如SuperObj... 阅读全文

posted @ 2010-04-30 11:08 Happy Coding 阅读(1059) 评论(0) 推荐(0) 编辑

上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 30 下一页