工厂模式分为两种,一种是简单工厂模式。另一种称之为工厂模式。
简单工厂模式是使用一个外部的单体或者静态方法来生成实例。
而工厂模式使用子类来决定内部成员要实现那个具体的类的实例。
工厂模式要求被具体实现的类,必须提供相同的接口。
下面我们将通过一段代码来讲述一个简单工厂模式的实现。
function myMode(){
}
myMode.prototype = {
create:function(){
var mode = createmode.create(mode);
mode.xxx();//可以对返回的mode执行任何你想要的操作
return mode;
}
}
var createdmode = (function(){ //一个单例
return {
creaet:function(mode){
var tmpMode;
switch(mode){
case 'mode1':
tmpMode = new mode1();
break;
case 'mode2':
tmpMode = new mode2();
break;
default:
tmpMode = new defamode();
break;
}
checkMode(mode,[xxx,xxx,xxx,xxx,xxx]);//checkMode的作用是检查mode是否实现了后面的[xxx]方法,如果没实现将抛出异常
return tpmMode;
}
}
})();
function checkMode(obj,methods){
if(!(typeof obj == 'object')){
throw new Error("error");
}
for(var i=0,len=methods.length;i<len;i++){
var method = methods[i];
if(!obj[method] || typeof object[method] !== 'function'){
throw new Error('error');
}
}
}
通过上面的代码,便实现了简单工厂模式。首先我们有一个myMode,他有一个create方法,这个方法将返回一个mode。
这个mode可以是任何对象。因为它是由一个外部单例所创造返回的mode。如果你想改变它,可以在外部单例里加入更多的case。
只要它实现了规定的接口,那么它就是符合的工厂模式的。是可以被myMode直接使用免费发布广告的。这一样以来,就可以把所有的mode集中在一起管理。
想要添加或者更改mode也变得容易。好了,简单工厂模式到此也就结束了。
下面是今天在某个群讨论时,看到的一段对工厂模式的描述的比较好的话。便顺手摘抄了下来
"后宫三千佳丽等待侍寝,大家都有名牌,一个太监把牌子拿上来,皇上翻,翻中一牌子给太监,太监去调这个女人(也许是男人),这个太监就相当于B2B工厂,皇上给他参数,他根据信息免费发布参数去调用,但具体侍寝的事由后宫去实现,有的KJ,有的是XT,有的是TJ,有的是GJ,有的是XJ,各不相同"
不要问我那些字母代表什么意思,我想大家都懂的~~~~
不好意思,刚刚创建单例那里有点错误,已修正。
相关推荐
JavaScript设计模式.pdf JavaScript设计模式是指在软件开发中使用JavaScript语言编写的设计模式。这些设计模式旨在提高代码的重用性、可读性、维护性和扩展性。以下是JavaScript设计模式的知识点总结: 1. 单体...
JavaScript设计模式是由张容铭编著的一本关于JavaScript编程领域的重要参考书籍,主要探讨了如何在JavaScript编程中应用设计模式来提升代码质量和可维护性。设计模式是软件工程中的最佳实践,它们是针对常见问题的...
1. **JavaScript设计模式**: 设计模式是软件工程中经过实践验证的、解决常见问题的有效方法。在JavaScript中,常见的设计模式包括: - 单例模式:确保一个类只有一个实例,并提供全局访问点。 - 工厂模式:创建...
书中不仅介绍了JavaScript中经典和现代的设计模式,还包括了针对不同JavaScript开发框架(如MVC、MVP、MVVM)的设计模式,以及最新的模块化JavaScript设计模式(AMD、CommonJS、ES Harmony)和jQuery中的设计模式。...
因此,通过学习JavaScript设计模式,Web开发人员能够更好地组织代码,写出更加健壮且易于维护的JavaScript应用程序。 《Javascript 设计模式》电子书深入讲解了JavaScript开发原理以及在客户端脚本开发中的设计模式...
总结来说,JavaScript设计模式作为前端开发的基石之一,对于提升开发效率和代码质量有着不可忽视的作用。通过闭包和封装,我们可以实现更好的代码管理;通过掌握和运用各种设计模式,我们可以更加高效地解决问题,...
**JavaScript设计模式:深入理解与应用** 在编程领域,设计模式是解决常见问题的经验总结,它们代表了软件设计的最佳实践。对于JavaScript这种广泛应用于Web开发的动态语言来说,设计模式同样至关重要。《精通...
《Pro JavaScript Design Patterns》是一本不可多得的好书,它不仅全面介绍了JavaScript设计模式的相关知识,还深入剖析了面向对象编程的核心原理和技术细节。对于想要提升自己JavaScript编程水平的开发者来说,这...
这个"JavaScript设计模式Demo"可能包含了各种常见的设计模式示例,如单例模式、工厂模式、观察者模式等,这些都是提高代码质量和团队协作的关键因素。 1. **单例模式**:确保一个类只有一个实例,并提供全局访问点...
### 外文翻译:学用JavaScript设计模式 #### 序言与重要性 设计模式作为软件工程中的一个重要组成部分,其核心在于提供了一套标准的方法论,帮助开发人员以优雅、高效的方式解决常见的软件设计问题。《学用...
JavaScript设计模式是编程实践中一种重要的思想,它通过总结和提炼出一套可复用的解决方案,帮助开发者解决在软件开发过程中遇到的常见问题。设计模式并不是特定的语言特性,而是跨越多种编程语言的一般性原则和最佳...
工厂模式在 JavaScript 中的应用 工厂模式是一种常用的设计模式,它提供了一种创建对象的方式,而不需要指定具体的类别。工厂模式的主要优点是它可以将对象的创建过程与具体的类别分离,从而提高了代码的灵活性和可...
第二部分则专注于各种具体的设计模式及其在JavaScript语言中的应用,主要介绍了工厂模式、桥接模式、组合模式、门面模式等几种常见的模式。为了让每一章中的示例都尽可能地贴近实际应用,书中同时列举了一些...
在JavaScript中,常见的设计模式包括工厂模式、单例模式、观察者模式、装饰器模式、代理模式等。例如,工厂模式可以用来创建对象,避免直接使用new操作符,提高代码的可扩展性;单例模式确保一个类只有一个实例,常...
JavaScript设计模式是编程实践中的一种重要思想,它提供了一套经过时间考验的最佳实践,用来解决常见的编程问题和提高代码的可维护性、可扩展性和可复用性。在JavaScript这种动态类型的脚本语言中,设计模式尤其重要...
在深入探讨《JavaScript设计模式系统讲解与应用》的内容之前,我们先来了解一下设计模式的基本概念以及为什么它对于前端开发人员尤为重要。设计模式是一套被反复使用的、经过分类编目的、包含结构化的解决方案,用于...
JavaScript设计模式是编程实践中一种优秀的代码组织方式,它总结了在特定场景下解决常见问题的最佳实践。构造函数模式是JavaScript中的一种重要设计模式,用于创建对象。本文将深入探讨构造函数模式及其应用。 构造...
### JavaScript设计模式详解:单例模式与观察者模式 #### 一、单例模式 **定义**:单例模式是一种常用的软件设计模式,其目的是确保某个类只有一个实例,并且能够提供一个全局访问点来访问该实例。在JavaScript中...