随笔分类 -  Pattern

ACE主动对象模式
摘要:ACE主动对象模式 ACE主动对象模式解决的核心问题是,异步调用及线程context的切换。ACE主动对象的实现侧重于类代码段的并发访问,这种访问模式仅适合短小的处理流程,比如socket的accept请求,或者webservice调用。如果代码段处理响应速度大于请求到达速度,异步访问队列将很快被访 阅读全文

posted @ 2017-04-19 11:17 炽离 阅读(1116) 评论(0) 推荐(0)

模板singleton模式的C++实现
摘要:模板singleton模式的C++实现 近期回过头整理了一下singleton模式,看了别人写的关于singleton的介绍。发现这个singleton模式虽然简单,但要写一个稳定/线程安全/泛型的模板singleton,还是需要一点技巧的。经过整理,要写一个模板的singlton至少需要以下几个知 阅读全文

posted @ 2016-11-21 16:31 炽离 阅读(4422) 评论(0) 推荐(0)

Template - Strategy
摘要:模板模式是一种基于继承的松耦合模式,其设计思路为,abstract类提供一组接口但不实现,不同concrete类继承同一接口并完成不同功能。如下图所示: 模板模式实现较为简单,TemplateMethod方法为暴露给用户的接口,其内部调用Primitive等方法。定义Primitive为纯虚函数,在 阅读全文

posted @ 2016-09-14 14:18 炽离 阅读(207) 评论(0) 推荐(0)

state
摘要:state模式出发点在于类似于if else和switch case这样的分支语句,当分支语句条件数目比较庞大时,看懂或者维护这样的代码很困难。例如,山东项目需求的数据对比功能,简单深度5的三叉树结构,用if语句去实现,就要用的近150行代码(起初是用逻辑表达式将每个节点的前置条件算出,这样减少了i 阅读全文

posted @ 2016-09-14 14:16 炽离 阅读(203) 评论(0) 推荐(0)

Factory and AbstractFactory ——抽象与具体的分离
摘要:Factory and AbstractFactory——抽象与具体的分离 面向对象标准关注于抽取一系列事物的共同行为,组建一个基类。行为再划分成两类: 1:现在及以后不太可能会变化的行为。 2:以后可扩展的行为。 Factory and AbstractFactory——抽象与具体的分离 面向对象 阅读全文

posted @ 2016-09-14 14:12 炽离 阅读(204) 评论(0) 推荐(0)

Singleton ——运行时全局唯一对象
摘要:Singleton 运行时全局唯一对象 Singleton模式只解决一个问题,如何做到运行时创建一个全局唯一的对象? 1:隐藏类的实例化操作,即将构造函数声明为private或protected。任何显示实例化Singleton对象的操作都将被避免。 2:类内用static声明对象,将此对象放在静态 阅读全文

posted @ 2016-09-14 14:11 炽离 阅读(295) 评论(0) 推荐(0)

Facade ——为子系统的一组接口提供一致界面
摘要:Façade模式提供了子系统一组接口的一致封装特性,如下图所示: 如图所示,OperationWrapper的实现依赖SubSystem1,2等的Operation操作。但用户调用OperationWrapper并不关心子系统的Operation操作如何实现,只要这些操作能返回正确结果即可。可见,F 阅读全文

posted @ 2016-09-14 14:09 炽离 阅读(389) 评论(0) 推荐(0)

导航