您的位置:首页 > 其它

2.1 《硬啃设计模式》 第3章 “妞”太多,如何管理?(1)- 简单工厂

2013-10-24 13:36 369 查看
如果在代码中经常要重复写这段代码,实在不太爽:

if (…...)

newObject = new TypeA(); //TypeA TypeB的父类一样。

else if (…...)

newObject = new TypeB(); //TypeA TypeB的父类一样。

……

你考虑怎样改进?

这样可不简单!用一个静态方法,根据传入参数返回所需的对象便可,在每个需要用到这个对象的地方,这样写便可:

Object newObject = ObjectBuilder.CreateObject(string type);

类图如下:

 


以上这个设计就是简单工厂,简单工厂不是23种模式中的一种,但在我们实际工作中经常会用到,简单工厂是管理new的最常见方法。

在程序中new对象一般没有这样简单,往往要根据不同的情况new不同的对象,并且要初始化对象,我们往往将这些工作“包装”到某个方法里面,通过这个方法直接得到需要的对象。

 

 

请看下一文……
 
 
 

作者:张传波

创新工场创业课堂(敏捷课程)讲师

软件研发管理资深顾问

CMMI首席专家

《火球——UML大战需求分析》作者

《硬啃设计模式》作者

www.umlonline.org创办人
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐