2015元旦小长假最后一日,再接再厉,一口气读完『Head First 设计模式』

同样的,一些有启发的内容,择其要点,摘录如下

/模式/ 策略模式

实现一组可以互换的模块(算法、行为),并使用委托来决定使用哪一个

/模式/ 观察者模式

出版者 + 订阅者 = 观察者模式

Subject + Observer = 观察者模式

/原则/ 为了松耦合而努力

/模式/ 装饰者模式

星巴兹咖啡

包装一个对象,以提供新的行为

/模式/ 工厂模式

/原则/ 依赖抽象,而不要依赖具体类

这里,抽象可以是抽象类(Abstract Class),也可以是接口(Interface)

减少依赖 ~= 减少import

/模式/ 单例模式

/模式/ 命令模式

将任务(一组动作)及其执行者封装进一个命令对象(Command Object)

此命令对象可以被存储、转移、并最终执行(execute)

典型应用:任务队列

/模式/ 适配器模式

封装对象,以提供不同的接口

将火鸡适配成鸭子

/模式/ 外观模式

提供一个简洁统一的对外接口(即:外观),代理、屏蔽其背后的一群功能模块

/模式/ 模板方法模式

父类(抽象类)提供算法的框架流程(即:模板)及实现部分步骤,由子类(实现类)实现缺失的步骤(抽象方法)

/模式/ 状态模式

糖果机

/模式/ 代理模式

包装对象,以控制对此对象的访问

远程代理:糖果机监视器

虚拟代理:下载CD封面

保护代理

#———–

绝大部分设计模式,都要用到『接口』

这些模式,现在虽未用到,但先暂存起来,在适当的机会,自然会从脑子里蹦出来

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注