今天这里写一下模板模式,模板模式通俗讲就是将子类重复实现的代码抽象到父类,这样减少重复代码的出现,打造一个“代码复用平台”。
不多说了还是先上代码,个人比较懒,这里大《大话设计模式》书中的例子拿出来举例:
def TestA(self):
print "This is Question A"
print self.TestAResult()
def TestB(self):
print "This is Question B"
print self.TestBResult()
def TestAResult(self):
pass
def TestBResult(self):
pass
class StudentA(Template):
def TestAResult(self):
return "This is "+self.name+u" Result A"
def TestBResult(self):
return "This is "+self.name+u" Result B"
class StudentB(Template):
def TestAResult(self):
return "This is "+self.name+" Result A"
def TestBResult(self):
return "This is "+self.name+u" Result B"
if __name__=="__main__":
sA = StudentA("Melody")
sB = StudentB("ToM")
sA.TestA()
sB.TestB()
这里是简单的Python代码,主题很明确,就是将子类中所有重复部分放入父类。
其实模板模式也是我们最常用的模式,后期我还会根据《大话设计模式》将所有模式的python实现呈现给大家。
当然本人代码水平并不是很高,在这里也希望和大家共勉。。。