头一低,很多年都这样过去了...

欢迎来到Kittow的部落格! - http://blog.skyhe.com

Agile Web Development (敏捷Web开发)

Want to Know Something More? Move Your Mouse Here;)

我是天空的一片云,偶尔投影在你的波心,你记得也好,最好你忘掉,你我在交汇时,互放的光亮。
——徐志摩《偶然》 More...

我的VOA听写积分

2006-11-29 [返回]
[原创]JavaScript中应用设计模式
最近在看《Ajax实战》( Ajax in action ),学到不少dom、css和js的底层知识,扫除了一些盲点

这本书最特色的地方就是先打下理论基础,第三章就讲到了javascript中如何应用设计模式重构代码

Facade模式:
Facade模式可以用来为一个服务或者一些功能的不同实现方式,提供公共的访问点。
例如XMLHttpRequest对象在FireFox和IE中的创建方式不同,我们可以用一个Ajax接口函数来创建XMLHttpRequest对象,而不用关心他是用FF还是IE方式实现

Adapter模式:(适配器模式)
与两个提供相同功能的子系统共同工作。
同上面为每个子系统构造一个Facade不同,我们为其中一个子系统提供一个额外的层(适配器层adapter),使得这个子系统展现出与另一个子系统相同的API。

Obserser模式:(管理者模式)
Obserser模式定义了一个Observable对象。通过Obserser模式,职责被恰当的分配到事件源和处理函数之间。处理函数负责自己的登记和注销,事件源负责维护处理函数列表,并在事件发生时调用处理函数。

Command模式:
Command模式定义了一些具有任意复杂性的活动,可以在代码之间传递或者在UI元素之间交换。
Tips1:将用户的操作都封装为Command对象
Tips2:实现代码复用
Tips3:OO中的抽象

Singleton模式:
一个对象只有一个实例,有时候也描述为一个singleton(单例),用来保持对资源的唯一引用
在类Java的语言中,实现singleton的方法通常是隐藏对象的构造函数,并提供一个获取的方法
转自:天河网 | www.skyhe.com

Posted at 11:31 AM | Comments[1]

转自:天河网 | www.skyhe.com

发表评论
We Used Ajax to Post Your Comment!
本站评论系统采用Ajax技术,无刷新发送评论
您的大名 *   
电子邮件  
5+6=? *(请输入“5+6=?”的结果)
评论内容 *


  kittow | 发表日期:2006-11-29 11:41:49
加上之前已经掌握的Factory模式,目前已经了解了6种设计模式,继续学习~~^O^