随笔分类 - 设计模式
摘要:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。[代码]房子的建造过程是固定不变的,都是先做墙,后是门窗。 但是墙可以根据情况,选择对应的子库。最后,都是返回一个对象:房子。
阅读全文
摘要:抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。[代码]解决了对系列创建的问题,各个子类中可能存在相互依赖的关系,如上面:日志的输出类,依赖于异常返回类。 这个模式是假设子类不变的情况下使用的,即只有log和exception这两个字类的创建,不会再添加其它的字类,但是可以添加相应的系列如:JapanesseFactory(日文工厂)
阅读全文
摘要:定义一个用户创建对象的接口,让子类决定实例化哪一个类。使一个类的实例化延迟到其子类。工厂类与产品类往往具有平行的等级结构,它们之间一一对应。相关类:[代码]app.config[代码]
阅读全文
摘要:保证一个类仅有一个实例,并提供一个访问它的全局访问点。两个实用的实现方式:1. 静态初始化[代码]该类标记为 sealed 以阻止发生派生,而派生可能会增加实例.公共语言运行库负责处理变量初始化,是线程安全的。在大多数情况下,静态初始化是在 .NET 中实现 Singleton 的首选方法。如果你的静态类比较多或是比较大,对性能有要求,可以用下面的方法 2 . 静态延迟初始化[代码]初始化工作有C...
阅读全文

浙公网安备 33010602011771号