[设计模式]简单工厂
连接: http://samwong.iteye.com/
?
Simple Factory模式又称Static Factory模式。一个Simple Factory生产成品,而对客户端隐藏产品产生的细节,物件如何生成,生成前是否与其它物件建立依赖关係,客户端皆不用理会,用以将物件生成方式之变化与客户端程式码隔离。
假设今天,您要建立一个Message物件,这个Message物件会有一连串的物件实例化与依赖关係建立流程:
?
UML类别图中,传回型态Product意指的是具有Product所定义之公开协定(物件上的公开方法)的物件,而不是专指Java中的interface定义。以Python来说,以下也是个Simple Factory的实现:?
Python的变数没有型态,真正的型态资讯是在物件之上,就客户端的角度而言,要确定的是传回物件必然拥有send()公开方法。
Simple Factory使用静态方法来简单地隐藏物件建立细节。撇开静态方法不谈,隐藏物件建立的细节仍是Factory模式的重点,可将这个模式推至极緻,而成为一种通用、专门用来生成物件、建立依赖关係、甚至具备管理物件生命週期职责的轻量级容器。
参考:samwong博客
http://samwong.iteye.com/
1 楼 yunchow 2010-12-17 最近都爱上了写设计模式 2 楼 jspjson 2010-12-17 没看懂,不过我真想好好学习学习 3 楼 sjmei 2010-12-19 在图书馆借了本设计模式java手册,介绍23种设计模式的,不错 4 楼 rainsilence 2010-12-19 这哪里是简单工厂啊。这是建造模式