
设计模式
没有昵称阿
计算机专业同学的充电站,专注分享硬核CS学习路线、大学生成长干货。有些道理如果早一点知道,就能少走很多弯路~~~
展开
-
设计模式之组合模式(Composite Pattern)
作用:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。UML结构图:抽象基类:1)Component:为组合中的对象声明接口,声明了类共有接口的缺省行为(如这里的Add,Remove,GetChild函数),声明一个接口函数可以访问Component的子组件.接口函数:1)Compo转载 2012-08-27 20:17:21 · 1937 阅读 · 0 评论 -
【设计模式】设计模式C++编程实现之策略模式(Strategy Pattern)
在介绍具体的设计模式之前,先介绍一下OO(Objected-Oreinted)基础以及OO原则。OO基础:抽象、封面装、多态、继承。OO原则:封装变化。多用组合,少用继承。针对接口编程,不针对实现编程。策略模式定义:定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。一个很重要的设计原则是:找出原创 2012-06-26 21:25:18 · 2428 阅读 · 0 评论 -
【设计模式】设计模式C++编程实现之观察者模式(ObserverPattern)
观察者模式定义:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会受到通知并自动更新。观察者模式又叫做发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听原创 2013-04-18 20:15:51 · 2831 阅读 · 2 评论 -
【设计模式】设计模式C++编程实现之单例模式(Singleton Pattern)
有一些对象我们只需要一个,比如说线程池(threadpool)缓存(cache)、对话框、处理偏好设置和注册表的对象、日志对象,充当打印机、显卡等设备的驱动程序的对象。如果制造出多个实例,则会导致许多问题的产生。许多时候的确可以通过程序员之间的阅读就可以办到,但是利用单例模式是更好的办法。单例模式给我们一个全局的访问点,和全局变量一样方便,有没有全局变量的缺点(必须在程序开始就创建,如果后原创 2013-04-17 14:57:58 · 3348 阅读 · 1 评论