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