设计模式
luliyuan
这个作者很懒,什么都没留下…
展开
-
面向对象设计原则-开放封闭原则
开发封闭原则(Open-Closed Principle OCP)所谓开放封闭原则就是软件实体应该对扩展开发,而对修改封闭。开放封闭原则是所有面向对象原则的核心。软件设计本身所追求的目标就是封装变化,降低耦合,而开放封闭原则正是对这一目标的最直接体现。 开放封闭原则主要体现在两个方面: 对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。 对修转载 2012-09-25 10:08:49 · 1005 阅读 · 0 评论 -
依赖倒转原则
开闭原则的主要机制就是依赖倒转原则,这个原则的内容是:要依赖于抽象,不要依赖于具体,即要针对接口编程,不针对实现编程。依赖也就是耦合,共分为下面3种。零耦合(Nil Coupling)关系:两个类没有依赖关系。具体耦合(Concrete Coupling)关系:两个具体的类之间有依赖关系,如果一个具体类直接引用另外一个具体类,就是这种关系。抽象耦合(Abstract转载 2012-09-25 10:39:27 · 644 阅读 · 0 评论 -
简单工厂模式
1、从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。2、简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产原创 2012-09-25 16:50:09 · 677 阅读 · 0 评论 -
策略模式
一、 策略(Strategy)模式策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。假设现在要设计一个贩卖各类书籍的电子商务网站的购物车(Shopping Cat)系统。一个最简单的情况就是把所有货品的单价乘上数量,但是实际情况肯定比这要复杂。比如,本网站可能对所有的教材类图书实行每本一转载 2012-09-25 14:53:15 · 644 阅读 · 0 评论 -
观察者模式
1、概念:观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。2、观察者模式结构图3、例子一个简单的例子,比如说猫叫,老鼠跑,主人被惊醒。1.Subject:[c-sharp:collapse] + expand sourceview plaincopy原创 2012-09-25 14:35:47 · 812 阅读 · 0 评论 -
工厂方法模式
1、修正了简单工厂模式中不遵守开放-封闭原则。工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。工厂方法模式的对简单工厂模式进行了抽象。有一原创 2012-09-25 17:20:55 · 667 阅读 · 0 评论 -
单体模式+模板类+智能指针实现CSingleton
定义单体(Singleton)模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。 理解1. Singleton模式用来取代全局静态变量。C++通过静态成员变量来实现类实例全局唯一性。2. instance()方法是单体提供的唯一调用入口。 要点1. 为了防止外界调用产生多个实例,将构造方法、析构方法、拷贝构造方法、赋值重载原创 2014-04-04 13:45:13 · 4584 阅读 · 0 评论 -
MVC框架模式
1、控制类中有业务类和画面类map m_ControllerMap;控制类决定具体画面的处理交给哪个业务类处理主要接口:(1) virtual int AddController(VIEWID_FORM apxVid, CModelBase * pModel);(2) virtual int RemoveController(VIEWID_FORM apxVid, CModel原创 2013-06-07 15:24:19 · 928 阅读 · 0 评论