摘要:
1.原型模式(Prototype),用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。2.原型模式(Prototype)结构图 3.原型模式其实就是从一个对象再创建另外一个可定制的对象,而且不需知道任何创建的细节。4.对于.Net而言,那个原型抽象类Prototype是用不着的,因为克隆实在是太常用了,所以.Net在System命名空间中提供了ICloneable接口,其中就是唯一的一个方法Clone(),这样就只需要实现这个接口就可以完成原型模式了。5.一般在初始化的信息不发生变化的情况下,克隆是最好的办法,这既隐藏了对象创建的细节,又对性能是大大的提高。它等于是不用重新初始化 阅读全文
摘要:
1.工厂方法(Factory Method),定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法是一个类的实例化延迟到其子类。2.工厂方法(Factory Method)结构图 3.工厂方法模式实现时,客户端需要决定实例化哪一个工厂来实现运算类,选择判断的问题还是存在的,也就是说,工厂方法把简单工厂的内部逻辑判断移到了客户端代码来进行。你想要加功能,本来改工厂类,而现在是修改客户端! 阅读全文
摘要:
1.代理模式(proxy),为其他对象提供一种代理以控制对这个对象的访问。2.代理模式(Proxy)结构图 3.代理模式使用的场合:①远程代理,也就是为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实。如WebService在.NET中的应用。②虚拟代理,是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真实对象。③安全代理,是用来控制真实对象访问时的权限。一般用于对象应该有不同的访问权限的时候。④智能指引,是指当调用真实的对象时,代理处理另外一些事。 阅读全文