Wzorce projektowe w Pythonie - Command
Wzorzec poleceń dodaje poziom abstrakcji między akcjami i zawiera obiekt, który wywołuje te akcje.
W tym wzorcu projektowym klient tworzy obiekt polecenia, który zawiera listę poleceń do wykonania. Utworzony obiekt polecenia implementuje określony interfejs.
Poniżej przedstawiono podstawową architekturę wzorca poleceń -
Jak zaimplementować wzorzec poleceń?
Zobaczymy teraz, jak zaimplementować wzorzec projektowy.
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)
Wynik
Powyższy program generuje następujące dane wyjściowe -
Wyjaśnienie
Dane wyjściowe implementują wszystkie polecenia i słowa kluczowe wymienione w języku Python. Wyświetla niezbędne wartości zmiennych.