C#设计模式系列(16)-迭代器模式


作者:suddenly 浏览: 1,240
分类:.Net 标签:,

迭代器模式遍历集合的成熟模式,迭代器模式的关键是将遍历集合的任务交给一个叫做迭代器的对象,它的工作时遍历并选择序列中的对象,而客户端程序员不必知道或关心该集合序列底层的结构。 一、引言 在上篇博文中...

C#设计模式系列(15)-命令模式


作者:suddenly 浏览: 1,024
分类:.Net 标签:,

在这里先给大家解释一下,在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,...

C#设计模式系列(14)-模板方法模式


作者:suddenly 浏览: 895
分类:.Net 标签:,

模板方法,定义一个操作中的算法的骨架,而将步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义算法的某些特定步骤。 一、引言 提到模板,大家肯定不免想到生活中的“简历模板”、“论文模板”...

C#设计模式系列(13)-代理模式


作者:suddenly 浏览: 1,082
分类:.Net 标签:,

对于代理模式,我先给大家普及下关于代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介...

C#设计模式系列(12)-享元模式


作者:suddenly 浏览: 1,028
分类:.Net 标签:,

在这里先给大家解释一下,它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于只是因重复而导致使用无法令人接受的大量内存的大量物件。通常物件中的部分状态是可以分享。常...

C#设计模式系列(11)-外观模式


作者:suddenly 浏览: 800
分类:.Net 标签:,

外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用。维护一个大型遗留系统的时候,可能这个系统已经非常难以维护和扩展,但又包含非常重要的...

C#设计模式系列(10)-组合模式


作者:suddenly 浏览: 831
分类:.Net 标签:,

组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。掌握组合模式的重点是要理解清楚 “部分/整体” 还有 ”单个对象“ 与 “组合对象”...

C#设计模式系列(9)-装饰者模式


作者:suddenly 浏览: 900
分类:.Net 标签:,

英文叫Decorator Pattern,又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 一、引言 在软件开发中,我...

C#设计模式系列(8)-桥接模式


作者:suddenly 浏览: 903
分类:.Net 标签:,

在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?这就要使用桥接模式。 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应...

C#设计模式系列(7)–适配器模式


作者:suddenly 浏览: 974
分类:.Net 标签:,

在计算机编程中,适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。 ...

C#设计模式系列(6)-工厂方法模式


作者:suddenly 浏览: 988
分类:.Net 标签:,

今天给大家介绍的是C#设计模式系列的工厂方法模式,我们来看一下工厂方法模式与简单的工厂模式有什么不同的? 一、引言 在简单工厂模式中讲到简单工厂模式的缺点,有一点是——简单工厂模式系统难以扩展,一旦添加...