设计模式之python版(五)--工厂方法
2012-05-10 13:22
344 查看
工厂方法
应用特性:需要生成的对象经常需要增改时,抽离出易变的内容并独立放置在一个类中
结构特性:一个工厂类分离成多个子工厂类,分别只做一件事
UML:
结果:
应用特性:需要生成的对象经常需要增改时,抽离出易变的内容并独立放置在一个类中
结构特性:一个工厂类分离成多个子工厂类,分别只做一件事
UML:
#!/usr/bin/env python #encoding: utf-8 class factory_base: def __init__(self): pass def create_method(self): pass class factory1(factory_base): def __init__(self): pass def create_method(self): return class1() class factory2(factory_base): def __init__(self): pass def create_method(self): return class2() class class_base: def __init__(self): pass def do_something(self, something): pass class class1(class_base): def __init__(self): pass def do_something(self, something): print something class class2(class_base): def __init__(self): pass def do_something(self, something): print something + ' WITH ' + something if '__main__' == __name__: factory1_obj = factory1() factory2_obj = factory2() class1_obj = factory1_obj.create_method() class2_obj = factory2_obj.create_method() class1_obj.do_something('something') class2_obj.do_something('something') print factory1_obj.__class__ print factory2_obj.__class__ print class1_obj.__class__ print class2_obj.__class__
结果:
something something WITH something __main__.factory1 __main__.factory2 __main__.class1 __main__.class2
相关文章推荐
- 实例讲解Python设计模式编程之工厂方法模式的使用
- python实现的工厂方法--设计模式初级
- 23种设计模式之python实现--工厂方法
- python设计模式——工厂方法
- 设计模式(Python)-简单工厂,工厂方法和抽象工厂模式
- [Design Pattern]Python设计模式——工厂方法
- python实现工厂方法设计模式
- PYTHON设计模式,创建型之工厂方法模式
- 实例讲解Python设计模式编程之工厂方法模式的使用
- 设计模式之三种工厂模式总结(简单工厂、工厂方法、抽象工厂)
- 设计模式---工厂方法
- 设计模式之——工厂方法(factory)
- 【设计模式】简单工厂,工厂方法,抽象工厂
- 设计模式---工厂方法和抽象工厂的定义和区别
- 设计模式之工厂方法模式
- python设计模式之工厂模式
- 2 设计模式之工厂方法(二)
- 设计模式 工厂方法(Factory Method Pattern)转载
- 设计模式-简单工厂模式/静态工厂方法(Static Factory Method)
- 使用Mixin设计模式进行Python编程的方法讲解