设计模式
文章平均质量分 80
张小然
艰难的走在C#的道路上
展开
-
设计模式解读之 简单工厂模式&工厂方法模式&抽象工厂模式(1)
读了好多写简单工厂模式的文章,写一下自己的理解吧 首先说一下它的用处吧,当一个类(或接口)中有几个不同的功能,为了显示代码的可扩展性,即当新添加功能时不会直接修改原定义好的类,而是通过扩展一个新类的方式来添加新的功能,这就需要把功能的实现定义在子类当中来实现。另一点是当调用不同的功能时,能灵活的调用所以可以建一个专门的类来管理不同类的实例化,这样也使得代码的功能层跟展示层的分离。原创 2012-05-05 21:56:18 · 661 阅读 · 0 评论 -
设计模式解读 之策略模式(参照策略模式与简单工厂模式的对比)
先写一个最简单的策略模式的例子 abstract class Calculate { public abstract void Operate(); } class Add:Calculate { public override void Operate() { Debug.WriteLine(原创 2012-05-06 23:48:26 · 1312 阅读 · 0 评论 -
设计模式解读之 简单工厂模式&工厂方法模式&抽象工厂模式(2)
上一篇写了简单的工厂模式的实现,但是他还是有一个弊端,就是实体类通过继承,在子类中实现具体的功能,这样很好的做到了功能的可扩展,但是工厂类却是在类中通过switch来判断,对不同功能类的实例化是写死在工程类中的,这样一旦需要宽展就会修改该类。现在看下面的解决方案。 interface Animal { void Operate(); } class原创 2012-05-06 00:15:25 · 640 阅读 · 0 评论 -
设计模式解读之 简单工厂模式&工厂方法模式&抽象工厂模式(3)
前面写了简单工厂模式跟工厂方法模式,照着以前的思路再来看抽象工厂模式觉得就没啥新意了。从工厂方法模式的角度去分析,整体可分为实体类跟工厂类两大分支。其中实体部分由一个抽象类作为基类,再加若干个子类;工厂类有一个借口加若干个工厂子类组成。现在抽象方法就是在实体类这一分支上再加上一个并列的抽象类,以及相同结构的实现该抽象类的子类。 下面以实际代码展开说明: abstract clas原创 2012-05-06 18:05:10 · 594 阅读 · 0 评论