命令模式在操作之间添加抽象级别,并包含一个调用这些操作的对象.
在此设计模式中,客户端创建一个命令对象,其中包含一个命令列表被执行.创建的命令对象实现了一个特定的接口.
以下是命令模式的基本架构 :
我们现在将看到如何实现设计模式.
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语言中列出的所有命令和关键字.它打印变量的必要值.