随笔分类 -  C#设计模式

摘要:一、简单工厂与工厂模式的区别 1.1 简单工厂模式 专门定义一个工厂类负责创建其他类的实例,最大的优点在于工厂类中包含了必要的逻辑,根据客户需要的条件动态实例化相关的类 1.2 工厂方法模式 创建对象的接口,让子类去决定具体实例化的对象,把简单的内部逻辑判断移到了客户端代码。工厂方法克服了简单工厂违 阅读全文
posted @ 2016-05-07 20:10 Leo的日记本 阅读(196) 评论(0) 推荐(0)
摘要:策略模式包含三个角色: 环境(Context)角色:持有一个Strategy类的引用。 抽象策略(Strategy)角色:这是一个抽象角色,通常由一个接口或抽象类实现。此角色给出所有的具体策略类所需的接口。 具体策略(ConcreteStrategy)角色:包装了相关的算法或行为。 Strategy 阅读全文
posted @ 2016-05-07 12:08 Leo的日记本 阅读(149) 评论(0) 推荐(0)
摘要:通过一个计算器的例子来学习简单工厂 1、Operation 运算类 2、加减乘除类 3、简单运算工厂类 4、客户端代码 阅读全文
posted @ 2016-05-02 11:05 Leo的日记本 阅读(189) 评论(0) 推荐(0)
摘要:一、单例模式 目的:创建唯一实例 二、多线程时的单例 lock确保当一个县城位于代码的临界区时,另一个线程不进入临界区。如果其他线程试图进入锁定的代码,则他将一直等待,直到对象被释放。 三、双重锁定 对于instance存在的情况,就直接返回。当instance为null并且同时又两个线程调用Get 阅读全文
posted @ 2016-05-01 11:50 Leo的日记本 阅读(182) 评论(0) 推荐(0)