自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yfk的专栏

学习&记录&分享

  • 博客(11)
  • 资源 (21)
  • 收藏
  • 关注

原创 餐馆那些事之:Facade Pattern

1. 概述Facade Pattern是一种结构性模式。对于一个大系统里面有多个子系统,为了避免client和各个子系统进行复杂的交互,对子系统进行封装,对外提供一个统一的接口。使子系统的使用更加简单。类图:subsystem_x:具体的工作子系统Facade:子系统封装subsystem_x:具体的工作子系统Facade:子系统封装2.实例客人到了餐馆

2012-02-27 20:31:11 1689

原创 餐馆那些事之:Decorator Pattern

1. 概述Decorator Pattern:提供了一种通过组合给类增加职责的方法。和通过子类给类添加责任相比,这种方式更加灵活。类图:Object:抽象接口ConcreteObject:工作类(需要添加责任的类)Decorator:维护一个指向Object的指针,从而可以通过组合的方式为ConcreteObject类添加责任ConcreteDecoratorX

2012-02-27 20:30:51 1315

原创 餐馆那些事之:Mediator Pattern

1. 概述Mediator Pattern:封装了一组对象之间的交互,使得对象之间保持松耦合的关系,避免对象维护复杂的关系交互。简单的说,Mediator封装的是交互。类图:object实例之间的交互,统一由Mediator维护。2. 实例餐馆有cook和waiter,cook之间需要彼此交流配合,也需要和waiter进行交流, 例如一个厨师请另一个厨师帮忙切菜

2012-02-25 10:49:37 1380

原创 餐馆那些事之:State Pattern

1. 概述State Pattern即状态模式。一个简单的case:对于自动门来说,有两种状态:open和close,如果门处于open状态,如果用户再按open按钮,没有反应,如果按下close键,则门关闭。switch...case...实现:const int OPEN = 1; // door open 状态const int CLOSE = 2;// door clo

2012-02-23 20:49:31 1495

原创 c++类型识别及转换

1. 概念RTTI(Run-Time Type Information)即运行时类型识别,c++通过RTTI实现对多态的支持。c++是静态类型语言,其数据类型是在编译期就确定的,不能在运行时更改。为了支持RTTI,C++提供了一个type_info类和两个关键字typeid和dynamic_cast。type_info :存储特点类型的相关信息,常用来比较对象类型,type

2012-02-21 22:24:11 8069

原创 餐馆那些事之:Visitor Pattern

1. 概述Visitor Pattern本质上是通过方法和数据分离,从而实现:1)在不影响现有数据结构的情况下,添加新的方法2)双分派(在选择一个方法的时候,不仅仅要根据消息接收者的运行时类型,还要根据参数的运行时类型)3)Recovering lost type information(一个很好的例子:http://sourcemaking.com/design_patterns

2012-02-21 21:02:51 1948

原创 餐馆那些事之:Adapter Pattern

1. 概述Adapter pattern即适配器模式,其主要用于:1)一个类的接口转换成客户希望的另外一个接口,从而使得原本由于接口不兼容而不能一起工作的那些类可以一起工作2)给一个现存的类提供一个新的接口3)包装现有类,使其能使用新的系统Adapter pattern 类图:Client:定义客户请求接口Adaptee:需要进行适配的类Adapter:适配

2012-02-19 21:31:37 1306

原创 餐馆那些事之:Proxy Pattern

1. 概述Proxy Patter模式:通过对某个对象提供代理,从而控制&隔离对这个对象的访问。类图:Object:定义了Concrete_object和Proxy的公用接口,这样才能在需要使用Concrete_object的地方使用Proxy代替Concrete_object:具体实现类Proxy:Concrete_object的代理Proxy Pattern常使

2012-02-18 10:52:45 1499

原创 餐馆那些事之:Null Object

1. 概述在开发过程中,我们常常会越到这么一种case:向一个对象发送消息,每次都必须先检查对应的对象是否存在。如果对象存在执行相应操作,对象不存在则获取默认值或者做一些默认的操作。NULL object即使这么一种模式:通过提供NULL对象,从而使客户在向对象发送消息时,不关心对象是否存在,NULL对象中保存相应的默认值或方法。NULL object的优势个人理解:1)降低代码复

2012-02-16 14:44:21 1485

原创 餐馆那些事之:Command Pattern

1. 概述Composite Pattern是一种非常优雅的模式,实际使用中出现频率相当高。其通过对请求进行封装,解除了请求的发布者和具体实现者之间的耦合关系。类图:Customer:命令的发布者Command:命令的接口Concreate_command:具体命令的实现Worker:命令的具体执行者2. 实例一个顾客跑到餐馆吃饭,他告诉服务员需要点的菜

2012-02-14 03:04:27 2768 1

原创 Redis源码分析:主从复制

源码版本:redis 2.4.4redis的主从复制实现简单却功能强大,其具有以下特点:1. 一个master支持多个slave连接,slave可以接受其他slave的连接2. 主从同步时,master和slave都是非阻塞的redis主从复制可以用来:1. data redundancy 2. slave作为master的扩展,提供一些read-only的服务3.

2012-02-06 22:07:47 10145

网络编程模型示例

网络编程模型示例,c++编写 linux下测试通过

2012-05-21

IO模型编程实例

4种IO模型编程实例: 阻塞IO 无阻塞IO 多路复用IO 异步IO

2012-05-09

设计模式之禅 java

设计模式之禅,非常好的数,吐血推荐 高清版本!

2010-11-30

GCC中文使用手册 非常全

GCC中文使用手册,非常全!GCC中文使用手册,非常全!

2010-07-17

Windows驱动程序模型设计

Windows驱动程序模型设计,对从事驱动程序设计的朋友有很大的帮助。

2009-01-04

linux 基础学习总结

收集的linux基础学习 适合新手学习 包括命令行,系统简介等

2008-11-21

GSM及GPRS模块AT命令大全

AT命令大全,包括各种AT命令的用法 相当详细

2008-10-15

symbain学习中文课件

symbian学习的中文教程<br>绝对吐血

2008-03-07

symbian各种描述符类型转换

赞了好久的好东东,今天拿出来分享了<br>symbian各种描述府类型转化

2008-03-07

gps 概述

详细介绍GPS相关信息,让你进入GPS世界

2007-12-10

symbian 开发实例

具三个安装文件 ★ Carbide_C++ 2007\使用Carbide编写SymbianS60程序范例

2007-12-10

symbian环境安装

介绍进行symbian环境的安装与配置<br>及与其他软件结合的方法

2007-12-03

ActiveX控件

ActiveX控件 VS

2007-11-27

GIS开发软件介绍

GIS工具软件介绍GIS工具软件介绍

2007-11-27

weka使用教程

详细介绍了数据挖掘工具weka的使用方法

2007-11-14

数据结构和算法

一本编程宝典,使用于各种程序员

2007-11-07

EPOC操作系统和Symbian平台

EPOC操作系统和Symbian平台

2007-11-06

Symbian操作系统环境下通信系统的设计与实现

Symbian操作系统环境下通信系统的设计与实现

2007-11-06

Visual C++下symbian开发入门

介绍了Symbian下C++的开发 介绍了Symbian下C++的开发介绍了Symbian下C++的开发

2007-11-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除