
设计模式
文章平均质量分 61
onlyxuyang
这个作者很懒,什么都没留下…
展开
-
C#面向对象设计模式纵横谈(3):Abstract Factory 抽象工厂(创建型模式)
讲师:李建忠new的问题常规的对象创建方法:// 创建一个Road 对象Road road=new Road();new的问题:– 实现依赖,不能应对“具体实例化类型”的变化。解决思路:– 封装变化点—— 哪里变化,封装哪里– 潜台词:如果没有变化,当然不需要额外的封装!工厂模式的缘起• 变化点在“对象创建”,因此就封装“对象创建”• 面向接口编程——依赖接口,而非依赖实现• 最简单的解决原创 2006-04-25 23:09:00 · 1154 阅读 · 1 评论 -
C#面向对象设计模式纵横谈(1):面向对象设计模式与原则
讲师:李建忠每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。 ——原创 2006-04-24 23:01:00 · 1380 阅读 · 0 评论 -
C#面向对象设计模式纵横谈(2): Singleton单件(创建型模式)
讲师:李建忠模式分类从目的来看:– 创建型(Creational)模式:负责对象创建。– 结构型(Structural)模式:处理类与对象间的组合。– 行为型(Behavioral)模式:类与对象交互中的职责分配。从范围来看:– 类模式处理类与子类的静态关系。– 对象模式处理对象间的动态关系。动机(Motivation)在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实原创 2006-04-25 12:59:00 · 1201 阅读 · 0 评论 -
C#面向对象设计模式纵横谈(4):Builder 生成器(创建型模式)
讲师:李建忠Builder模式的缘起• 假设创建游戏中的一个房屋House设施,该房屋的构建由几个部分组成,且各个部分要富于变化。• 如果使用最直观的设计方法,每一个房屋部分的变化,都将导致房屋构建的重新修正……动机(Motivation)在软件系统中,有时候面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的原创 2006-04-26 11:21:00 · 1082 阅读 · 0 评论 -
C#面向对象设计模式纵横谈(5): Factory Method 工厂方法(创建型)
讲师:李建忠从耦合关系谈起– 模块与模块之间的紧耦合使得软件面对变化时,相关的模块都要随之更改– 模块与模块之间的松耦合使得软件面对变化时,一些模块更容易被替换或者更改,但其他模块保持不变耦合关系直接决定着软件面对变化时的行为 动机(Motivation)在软件系统中,经常面临着“某个对象”的创建工作;由于需求的变化,这个对象经常面临着剧烈的变化,但是它却拥有比较稳定的接口。如何应对这原创 2006-04-27 12:48:00 · 1023 阅读 · 0 评论 -
C#面向对象设计模式纵横谈(6):Prototype 原型(创建型模式)
讲师: 李建忠依赖关系的倒置抽象不应该依赖于实现细节,实现细节应该依赖于抽象。-抽象A直接依赖于实现细节b–抽象A依赖于抽象B,实现细节b依赖于抽象B动机(Motivation)在软件系统中,经常面临着“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着剧烈的变化,但是它们却拥有比较稳定一致的接口。如何应对这种变化?如何向“客户程序(使用这些对象的程序)”隔原创 2006-04-28 12:27:00 · 1053 阅读 · 0 评论