PPT_python设计模式_观察者模式
PPT_python设计模式_观察者模式
1、结构
身份类 --Id()
行为类 --Act() 可以和身份类何在一起
将以上类中的相同方法抽象出来组合到一个统一类中抽象类。
中间功能类 比如观察者模式中的观察者类
2、将人物生成对象
3、设置故事环境
各个人物或事件关联。
比如这里boss来了,观察者就会通知。
4、让环境动起来。
总结:1人物事件 2关联3设置场景环境 4让环境执行起来
class Boss(object):
def action(self):
print "boss act-------------------"
class EmIdentity():
def __init__(self,name,actions):
self.name = name
self.actions = actions
def working(self):
print "{} is {}".format(self.name,self.actions)
class Emplyee1(EmIdentity):
def __init__(self,name,actions):
super(Emplyee1,self).__init__(name,actions)
class Emplyee2(EmIdentity):
def __init__(self,name,actions):
super(Emplyee2,self).__init__(name,actions)
class Observers(object):
def __init__(self):
self.obser = []
def attach(self,obj):
self.obser.append(obj)
def notify(self):
for o in self.obser:
o.working()
boss = Boss()
e1 = Emplyee1("wenyuan","reading")
e2 = Emplyee2("process","coding")
ob = Observers()
ob.attach(e1)
ob.attach(e2)
boss.action()
ob.notify()
浙公网安备 33010602011771号