转自:http://www.jellythink.com/archives/62问题描述之前讲到了C++设计模式——简单工厂模式,由于简单工厂模式的局限性,比如:工厂现在能生产ProductA、ProductB和ProductC三种产品了,此时,需要增加生产ProductD产品;那么,首先是不是需要...
分类:
其他好文 时间:
2015-04-20 18:14:37
阅读次数:
104
工厂模式:通过类里面的静态方法直接生成实例对象的方法,可以生成不同的实例对象; 单例模式: 1、构造函数需要标记为private(访问控制:防止外部代码使用new操作符创建对象),单例类不能在其他类中实例化,只能被其自身实例化; 2、拥有一个保存类的实例的静态成员变量 3、拥有一个访问这...
分类:
Web程序 时间:
2015-04-20 12:44:27
阅读次数:
124
一、工厂方法模式
特点:
1、一个抽象产品类,可以派生出多个具体产品类
2、一个抽象工厂类,可以派生出多个具体工厂类
3、每个具体工厂类只能创建一个具体产品类的实例
分类:
1、普通工厂模式
2、多个工厂方法模式
3、静态工厂方法模式
二、抽象工厂模式
特点:将工厂和产品都抽象出来
1、多个抽象产品类,每个抽象产品类可以派生出多个具体产品类
2、一个抽象工厂类,可以...
分类:
其他好文 时间:
2015-04-19 22:49:50
阅读次数:
131
1 //=================method 工厂模式================ 2 var Person = function (name, age) { 3 var object = {}; 4 5 object.name = name; ...
分类:
编程语言 时间:
2015-04-19 13:14:06
阅读次数:
160
最近看一本设计模式,自己抽空实现了一下,分享一下,最忌比较忙,就不细说了,先把代码放在这里,之后补上注释。书上把设计模式分为创建型,结构型和行为型,本次先来创建型。(一),工厂模式AbsractFactory头文件#ifndef_ABS_FACTORY_H_#define_ABS_FACTORY_H...
分类:
其他好文 时间:
2015-04-18 13:03:09
阅读次数:
236
工厂模式function factorial(name,age){ var o=new Object(); o.name=name; o.age=age; o.sayName= function () { alert(th...
分类:
Web程序 时间:
2015-04-17 17:19:56
阅读次数:
163
1.享元模式(Flyweight)定义:享元模式的主要目的是实现对象的共享,即共享池,当系统中对象多的时候可以减少内存的开销,通常与工厂模式一起使用。 1.1 工厂//工厂:内置一个池,如果存在了则取出,否则则创建加入池中public class FactoryPool { private Hash...
分类:
编程语言 时间:
2015-04-17 15:20:50
阅读次数:
168
php 工厂模式主要讲的是简单工程模式。场景:写一个简单计算器普通写法:getResult(1,2,”+”);从上面的例子看并没有什么毛病。但是有一天需求改了,要求这个计算器能计算乘法,除法,直接加swtich分支能解决,突然有一天需求在改了,求根,更复杂的算数的时候呢?工厂模式按照我的理解,就是提...
分类:
Web程序 时间:
2015-04-17 01:09:30
阅读次数:
122
声明:本系列博客参考资料《大话设计模式》,作者程杰。
前面我们介绍了简单工厂,今天我们继续学习另外一个工厂——工厂方法。
具体案例:请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我们一般采用FactoryMethod模式,带着MM到服务员那儿,说“要一个汉堡”,具体要什么样的汉堡呢,让MM直接跟服务员...
分类:
Web程序 时间:
2015-04-16 23:47:53
阅读次数:
188