码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象的程序设计之工厂模式

时间:2017-07-27 23:36:20      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:person   封装   soft   turn   工厂   job   sof   ret   create   

工厂模式

 

工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程。考虑到在ECMAScript中无法创建类,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节,如下面的例子所示。

 1 function createPerson(name, age, job){
 2 var o = new Object();
 3 o.name = name;
 4 o.age = age;
 5 o.job = job;
 6 o.sayName = function(){
 7 alert(this.name);
 8 };
 9 return o;
10 }
11 var person1 = createPerson(“Nicholas”, 29, “Software Engineer”);
12 var person2 = createPerson(“Greg”, 27, “Doctor”);

 

函数 createPerson() 能够根据接受的参数来构建一个包含所有必要信息的 Person 对象。可以无数次地调用这个函数,而每次它都会返回一个包含三个属性一个方法的对象。工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题(即怎样知道一个对象的类型)。

 

面向对象的程序设计之工厂模式

标签:person   封装   soft   turn   工厂   job   sof   ret   create   

原文地址:http://www.cnblogs.com/wuxianqiang/p/7247779.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!