Python 디자인 모델 의 명령 모델 원리 와 용법 사례 분석

본 논문 의 사례 는 Python 디자인 모델 의 명령 모델 원리 와 용법 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
명령 모드(command Pattern):요청 을 대상 으로 밀봉 하여 서로 다른 요청 으로 고객 을 매개 변수 화 할 수 있 습 니 다.요청 대기 열 이나 요청 로 그 를 기록 하고 취소 가능 한 동작 을 지원 합 니 다.
다음은 명령 모드 의 demo 입 니 다.

#!/usr/bin/env python
# -*- coding:utf-8 -*-
__author__ = 'Andy'
"""
      
    ――    
    (Command Pattern):        ,                  ;            ,          .
"""
#    
class Command(object):
  def __init__(self, receiver):
    self.receiver = receiver
  def execute(self):
    pass
#         
class ConcreteCommand(Command):
  def execute(self):
    self.receiver.action()
#     
class Invoker(object):
  def __init__(self):
    self.command = ''
  def setcommand(self,command):
    self.command = command
  def excutecommand(self):
    self.command.execute()
#      
class Receiver(object):
  def action(self):
    print "    "
if __name__ == "__main__":
  r = Receiver() #         
  c = ConcreteCommand(r) #         
  i = Invoker() #        
  i.setcommand(c) #     
  i.excutecommand() #     

상류의 디자인 은 다음 과 같다.

장점:
명령 대기 열 을 쉽게 설계 할 수 있 습 니 다.
명령 을 로그 에 쉽게 기록 할 수 있 습 니 다.
요청 을 받 아들 일 수 있 는 쪽 에서 요청 을 거부 할 지 여 부 를 결정 합 니 다.
요청 에 대한 취소 와 재 작업 을 쉽게 실현 할 수 있 습 니 다.
새로운 구체 적 인 명령 류 를 추가 하 는 것 은 다른 클래스 에 영향 을 주지 않 기 때문에 새로운 구체 적 인 명령 류 를 추가 하 는 것 은 쉽다.
명령 모드 의 가장 큰 장점 은 작업 을 요청 한 대상 과 작업 을 어떻게 수행 하 는 지 아 는 대상 을 분리 하 는 것 이다.
더 많은 파 이 썬 관련 내용 은 본 사이트 의 주 제 를 볼 수 있 습 니 다.
본 논문 에서 말 한 것 이 여러분 의 Python 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기