博客专栏  >  架构   >  C#设计模式

C#设计模式

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。此专栏为C#编写的设计模式实现。

关注
5 已关注
23篇博文
  • 【C#设计模式-备忘录模式】

    一.备忘录模式的定义: 在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 二.备忘录模式的结构和角色: 1.Originator(...

    2016-05-11 17:59
    5184
  • 【C#设计模式-访问者模式】

    一.访问者模式的定义: 表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。 二.访问者模式的结构和角色: 1.Visitor 抽象访...

    2016-05-11 15:09
    4722
  • 【C#设计模式-责任链模式】

    一.责任链模式的定义: 责任链模式指的是——某个请求需要多个对象进行处理,从而避免请求的发送者和接收之间的耦合关系。将这些对象连成一条链子,并沿着这条链子传递该请求,直到有对象处理它为止。 二.责任链...

    2016-05-11 11:46
    793
  • 【C#设计模式-策略者模式】

    一.策略者模式定义: 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 二. 策略者模式的组成: 抽象策略角色: 策略类...

    2016-05-10 12:00
    635
  • 【C#设计模式-状态模式】

    一.状态模式的定义:状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。 二.状态模式的意图:允许一个对象在...

    2016-05-10 11:04
    1095
  • 【C#设计模式-观察者模式】

    一.基本简介:观察者设计模式定义了对象间的一种一对多的依赖关系,以便一个对象的状态发生变化时,所有依赖于它的对象都得到通知并自动刷新。在现实生活中的可见观察者模式,例如,微信中的订阅号,订阅博客和QQ...

    2016-05-09 14:08
    886
  • 【C#设计模式-中介者模式】

    一.概述:中介者模式,定义了一个中介对象来封装一系列对象之间的交互关系。中介者使各个对象之间不需要显式地相互引用,从而使耦合性降低,而且可以独立地改变它们之间的交互行为。 二.例子:QQ游戏平台,聊...

    2016-05-06 16:39
    1501
  • 【C#设计模式-迭代器模式】

    一.概述:迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示。 二.适用性: 访问一个聚合对象的内容而无需暴露它的内部表示 支持对聚...

    2016-05-06 12:07
    3337
  • 【C#设计模式-命令模式】

    一.定义: 命令模式是将一类对象的功能操作进行抽象,一般来说,这些对象有相同的方法,所以这类对象有着类似的操作,我们通过抽象,就可以定义出一个命令对象,通过这样的方式,用户程序在使用的时候,只与该命令...

    2016-05-04 15:06
    879
  • 【C#设计模式-模板模式】

    一.定义:在一个抽象类中定义一个操作中的算法骨架(对应于生活中的大家下载的模板),而将一些步骤延迟到子类中去实现(对应于我们根据自己的情况向模板填充内容)。模板方法使得子类可以不改变一个算法的结构前提...

    2016-05-04 12:33
    508
  • 【C#设计模式-代理模式】

    一.定义:在软件开发过程中,一些对象有时候会由于网络或其他的障碍,不能够或者不能直接访问到这些对象,如果直接访问对象会给系统带来不必要的复杂性,这时候可以在客户端和目标对象之间增加一层中间层,让代理对...

    2016-05-04 11:18
    747
  • 【C#设计模式-享元模式】

    一.概述:享元模式(英语:Flyweight Pattern)是一种软件设计模式。它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于只是因重复而导致使用无法令人接受的...

    2016-05-03 18:11
    1311
  • 【C#设计模式-外观模式】

    一.概述:外观模式,为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用。 二.结构:Facade这个外观类为子系统提供一个共同的对外接口,Clients客户对...

    2016-05-03 12:45
    1430
  • 【C#设计模式-组合模式】

    一.概述:组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。 二.组合模式经典案例:系统目录结构,网站导航结构等 三.实现代码:通...

    2016-05-03 11:46
    1164
  • 【C#设计模式-装饰者模式】

    一.装饰者模式的定义: 装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 二.装饰者模式的实现: 这里应用显示生活中的例...

    2016-04-29 12:54
    1466
  • 【C#设计模式-桥接模式】

    一.桥接模式定义: 桥接模式即将抽象部分与实现部分脱耦,使它们可以独立变化。 二.桥接模式的实现: 我先引进一个生活中的例子,这里引用一个电视遥控器的例子,对于每一个牌子的遥控器,都有对于的遥控器...

    2016-04-29 11:23
    1023
  • 【C#设计模式-适配器模式】

    1.适配器模式一般的额使用情况: 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用。但是新环境要求的接口是这些现存对象所不满足的。如何应对这种“迁移的变化”?如何既能利...

    2016-04-26 12:48
    2149
  • 【C#设计模式-建造者模式】

    在软件系统中,有时候面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成; 由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法确相对稳定。 如...

    2016-04-25 17:43
    1297
  • 【C#设计模式-原型模式】

    创建型模式中一个比较特殊的模式-原型模式,这个模式呢,有个最大的特点是克隆一个现有的对象,这个克隆的结果有2种,一种是浅度复制,另一种是深度复制。 创建型模式一般是用来创建一个新的对象,然后我们使用这...

    2016-04-25 13:18
    1413
  • 【C#设计模式-单例模式】

    单例模式就是保证在整个应用程序的生命周期中,在任何时刻,被指定的类只有一个实例,并为客户程序提供一个获取该实例的全局访问点 一:经典模式: using System; using System.Col...

    2016-04-22 18:48
    2530

MongoDB
510066
C#多线程
812125
img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部