- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 设计模式--组合模式(Composite)
组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。Component为组合中的对象声明接口,在适当情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component的子部件。abstract cla
2011-07-14 11:04:06 291
原创 设计模式--单例模式(Singleton)
单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点。通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化对个对象,一个最好的办法就是让类自身负责保存它的唯一实例,这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法
2011-07-05 22:51:43 286
原创 设计模式--代理模式(Proxy)
代理模式,为其他对象提供一种代理以控制对这个对象的访问subject类,定义了RealSubject和Proxy的共用接口,这样就在任何使用RealSubject的地方都可以使用Proxyabstract class Subject{public abstra
2011-07-05 10:05:37 200
原创 设计模式--抽象工厂模式(Abstract Factory)
抽象工厂模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 AbstractProductA和AbstractProductB是两个抽象产品,ProductA1、ProductA2和ProductB1、ProductB2对两个抽象产品的具体分类的实现。 IFactory是一个抽象工厂接口,它里面应该包含所有的产品创建的抽象方法,ConcreteFactory1和Concr
2011-07-01 14:43:00 387
原创 设计模式--迭代器模式(Iterator)
迭代器模式提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。 需要访问一个聚集对象,而不管这些对象是什么,有多种遍历方式,提供开始,下一个,是否结束,当前哪一项等接口 Iterator迭代器抽象类abstract class Iterator{ public abstract object First();
2011-07-01 00:42:00 250
原创 设计模式--适配器模式(Adapter)
适配器模式(Adapter),将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 系统的数据和行为都正确,但接口不符时,我们应该考虑用适配器,目的是使控制范围之外的一个原有对象与某个接口匹配。适配器模式主要应用于希望服用一些现存的类,但是接口又与复用环境要求不一致的情况。 Target:这是客户所期待的接口,
2011-06-30 02:08:00 222
原创 设计模式--策略模式(Strategy)
策略模式:定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化不会影响到使用算法的用户。 封装变化点是面向对象的一种很重要的思维方式 Strategy类,定义所有支持的算法的公共接口//抽象算法类abstract class Strategy{ //算法方法 public abstract void AlgorithmInterface(
2011-06-29 02:19:00 274
原创 设计模式--简单工厂模式
1.复用:业务逻辑和界面逻辑分开,使业务逻辑可以被多处复用--封装2.紧耦合和松耦合:基类和派生类--继承3.实例化:用一个单独的类来做实例化的过程,即工厂--多态public class OperationFactory{ public static Operation createOperate(string operator) { Operation ope
2011-06-27 15:35:00 182
原创 设计模式--观察者模式(Publish/Subscribe Mode)
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。 特点: 一个对象的改变需要同时改变其他对象,而且不知道具体改变多少对象。 接触耦合,让耦合的双方都依赖于抽象,而不是依赖于具体,从而使格子的变化不会影响另一边的变化。 抽象类: //Subjecta
2011-06-27 13:30:00 596
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人