命令設計模式
命令模式在動作之間添加一個抽象級別,幷包含一個調用這些動作的對象。
在這種設計模式中,客戶端創建一個包含要執行的命令列表的命令對象。 創建的命令對象實現了特定的接口。
以下是命令模式的基本架構 -
如何實現命令模式?
現在我們將看到如何實現設計模式。參考以下實現代碼 -
def demo(a,b,c):
print 'a:',a
print 'b:',b
print 'c:',c
class Command:
def __init__(self, cmd, *args):
self._cmd=cmd
self._args=args
def __call__(self, *args):
return apply(self._cmd, self._args+args)
cmd = Command(dir,__builtins__)
print cmd()
cmd = Command(demo,1,2)
cmd(3)
執行上述程序生成以下輸出 -
注意:輸出實現了Python語言中列出的所有命令和關鍵字。它打印變量的值。