软件设计模式在JavaScript中的应用
2010-09-14 13:32:10 来源:WEB开发网1.简介
在Ajax技术出现之前,传统的Web应用中JavaScript代码所占的比例较少,并且大多数情况下都是采用面向过程的编程方式,真正将JavaScript作为一门高级语言进行正式编程的开发人员也很少。而目前富客户端的Web应用开发已经成为大势所趋,JavaScript在Web应用中所占的比例会越来越大。如何有效地实现代码的复用以及灵活应对需求的变化已经正式列入JavaScript程序员必须探讨的议事日程。
GoF的《Design Patterns:Elements of Reusable Object-Oriented Software》一书成为当代程序员研究设计模式的典范与开山之作。然而,目前针对设计模式的探讨主要停留在以Java与C#等强类型高级语言方面,那么,对于像JavaScript这样的弱类型语言是否也适用设计模式呢?答案是肯定的。在本文中,我将通过几个简短的示例来向你展示如何把设计模式应用于像JavaScript这样的弱类型语言的编程之中。
2.Singleton模式(亦称“单例模式”)
(1)概念
Singleton模式作为一种非常基本和重要的创建型模式,其职责是保证一个类有且只有一个实例,并提供一个访问它的全局访问点。
在程序设计过程中,有很多情况下需要确保一个类只能有一个实例。传统的编程语言中为了使一个类只有一个实例,最容易的方法是在类中嵌入静态变量,并在第一个实例中设置该变量,而且每次进入构造函数都要做检查,不管类有多少个实例,静态变量只能有一个实例。为了防止类被多次初始化,需要把构造函数声明为私有类型,这样便只能在静态方法里创建一个实例。
在JavaScript中,虽然我们仍然可以指定静态方法来构造对象,但由于我们不能利用构造函数的“私有”来禁止多个实例的生成,因此要完全实现Singleton并没有想象中那么简单。
Tags:软件 设计模式 JavaScript
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接