javascript 디자인 모델 C 중개자 모델 원리 와 용법 실례 분석

본 고 는 자 바스 크 립 트 디자인 모델 C 중개자 모델 의 원리 와 용법 을 실례 로 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
소개:전단 개발 과정 에서 구성 요소 와 구성 요소 간 의 통신 은 특히 흔 합 니 다.한 구성 요소 의 change 는 여러 구성 요소 의 change 를 일 으 켜 야 합 니 다.이 는 구성 요소 와 구성 요소 간 에 복잡 한 다 중 관계 체인 이 존재 해 야 합 니 다.어떻게 이러한 관 계 를 유지 하 는 복잡 도 를 줄 이 고 구성 요소 와 구성 요소 간 에 낮은 결합 을 실현 합 니까?이것 이 바로 우리 가 곧 소개 할 중개자 모델 이다.
정의:하나의 중개 대상(중개 자)으로 일련의 대상 의 상호작용 을 밀봉 하고 중개 자 는 대상 으로 하여 금 명시 적 인 상호 인용 이 필요 하지 않 게 하여 결합 을 느슨 하 게 하고 그들 간 의 상호작용 을 독립 적 으로 변화 시 킬 수 있다.중개 자 모델 은 조정자 모델 이 라 고도 부 르 는데 대상 행위 형 모델 이다.
장면:우 리 는 인 사 를 하 는 작은 demo 를 실현 합 니 다.소 가 중개자 에 게 메 시 지 를 보 냅 니 다.중개자 가 받 은 후에 risker 에 게 소 에 게 메 시 지 를 보 냅 니 다.
예시:

var Mediator = {
  Niuniu: null,
  Risker: null,
  showMessage: function(component, message){
    console.log(component.getName() + ' :' + message);
    if(component.getName() === 'Niuniu'){
      this.Risker.showMessage('hello Niuniu'); 
    }
  }
}
 
var Niuniu = function(){
  this.name = 'Niuniu';
  this.getName = function(){
    return this.name;
  }
  this.showMessage = function(message){
    Mediator.showMessage(this, message);
  }
}
 
var Risker = function(){
  this.name = 'Risker';
  this.getName = function(){
    return this.name;
  }
  this.showMessage = function(message){
    Mediator.showMessage(this, message);
  }
}
 
var niuniu = new Niuniu();
var risker = new Risker();
Mediator.niuniu = niuniu;
Mediator.Risker = risker;
 
niuniu.showMessage('hello Risker');
 
// Niuniu :hello Risker
// Risker :hello Niuniu

이 예 에서 Niuniu 와 Risker 는 동료 대상 이 라 고 부 르 는데 동료 대상 간 에 관련 관계 가 있어 다른 대상 에 게 영향 을 받 을 수도 있 고 다른 대상 에 게 도 영향 을 줄 수 있다.
Mediator 는 중개자 라 고 하 는데 사실은 중개자 모델 은 기 존의 그물 모양 의 관계 구 조 를 Mediator 를 중심 으로 하 는 별 모양 구조 로 바 꾸 었 을 뿐이다.관련 관계 가 적지 않 고 Mediator 에서 집중 적 으로 처리 되 었 습 니 다.
중개자 모델 요약:
장점:
*중개 자 모델 은 동료 대상 간 의 상호작용 을 간소화 하고 중개 자 와 동료의 한 쌍 의 다 중 상호작용 으로 원래 동료 간 의 다 중 상호작용 을 대체 했다.
*각 동료 대상 의 결합 을 해제 하고 중개 자 는 각 동료 대상 간 의 느슨 한 결합 에 유리 합 니 다.
단점:
*중개자 에 게 대량의 동료 간 의 상호작용 디 테 일이 포함 되 어 있어 중개자 가 매우 복잡 하고 유지 하기 어렵다.
적용 필드:
*시스템 에서 대상 간 에 복잡 한 인용 관계 가 존재 하고 시스템 구조 가 혼 란 스 러 워 이해 하기 어렵다
*한 대상 은 다른 많은 대상 을 인용 하고 이 대상 과 직접 통신 하기 때문에 이 대상 을 재 활용 하기 어렵다.
관심 있 는 친 구 는 온라인 HTML/CSS/JavaScript 코드 실행 도 구 를 사용 할 수 있 습 니 다.http://tools.jb51.net/code/HtmlJsRun상기 코드 실행 효 과 를 테스트 할 수 있 습 니 다.
자 바스 크 립 트 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있 습 니 다.,,,,,javascript 대상 입문 강좌,JavaScript 오류 및 디 버 깅 기술 요약,JavaScript 데이터 구조 와 알고리즘 기술 총화JavaScript 스 트 리밍 알고리즘 및 기술 총화.
본 고 에서 말 한 것 이 여러분 의 자 바스 크 립 트 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기