처음에 나는 go googled javascript mediator vs observer
와 거의 10 개의 링크를 읽었습니다.자바 스크립트 중재자 대 관찰자
또한 statckoverflow에서 검색하면 Mediator Vs Observer Object-Oriented Design Patterns 및 mediator-vs-observer이 표시됩니다.
그러나 나는 아직도 그들 사이의 차이점에 대해 분명히 이해하지 못하고 있습니다.
누군가가 더 명확하게 설명 할 수 있을지 궁금합니다.
아마도 실제 예입니다. :)
감사합니다.
예를 만들려고했는데, 이것이 중재자의 패턴입니까?
코드 : 여기
var EventMediator = {
publish: function (target, message) {
var args = Array.prototype.slice.call(arguments, 2);
var msgs = target.messages || [];
for (var i = 0; i < msgs.length; i++) {
var msg = msgs[i];
msg.callback.apply(msg.context, args);
}
},
register: function (target, message, fn) {
target.messages = target.messages || [];
target.messages.push({
context: target,
callback: fn
});
}
};
var t1 = {name: 'kk'};
var t2 = {name: 'gg'};
EventMediator.register(t1, "nameChanged", function() {
console.info("t1 name chagned");
});
EventMediator.publish(t1, "nameChanged");
나는 Mediator
메시지를 트리거 객체의 존재에 대해 알고 있어야 할 경우 알고 싶어?
내 업데이트를 확인할 수 있습니까? 나는 예제를 추가한다. – hguser
두 패턴의 믹스처럼 들립니다. 중재자 엔티티가 있지만 매핑 자체를 유지하는 대신 대상에 관찰자를 저장합니다. – fiddler