그래서 동료가 저에게 게시 / 구독 패턴 (JS / jQuery에서)을 소개했지만 '일반적인'JavaScript / jQuery보다이 패턴을 사용 하는 이유 를 파악하는 데 어려움을 겪고 있습니다.
예를 들어 이전에는 다음 코드가있었습니다.
$container.on('click', '.remove_order', function(event) {
event.preventDefault();
var orders = $(this).parents('form:first').find('div.order');
if (orders.length > 2) {
orders.last().remove();
}
});
예를 들어, 대신 이렇게하는 것의 장점을 볼 수 있습니다.
removeOrder = function(orders) {
if (orders.length > 2) {
orders.last().remove();
}
}
$container.on('click', '.remove_order', function(event) {
event.preventDefault();
removeOrder($(this).parents('form:first').find('div.order'));
});
removeOrder
다양한 이벤트 등에 대해 기능을 재사용 할 수있는 기능을 도입하기 때문입니다 .
그러나 게시 / 구독 패턴을 구현하고 동일한 작업을 수행하는 경우 다음 길이로 이동하는 이유는 무엇입니까? (참고로, jQuery tiny pub / sub 사용 )
removeOrder = function(e, orders) {
if (orders.length > 2) {
orders.last().remove();
}
}
$.subscribe('iquery/action/remove-order', removeOrder);
$container.on('click', '.remove_order', function(event) {
event.preventDefault();
$.publish('iquery/action/remove-order', $(this).parents('form:first').find('div.order'));
});
나는 패턴에 대해 확실히 읽었지만 이것이 왜 필요한지 상상할 수 없습니다. 이 패턴을 구현 하는 방법 을 설명 하는 튜토리얼 은 저의 기본 예제 만 다룹니다.
pub / sub의 유용성은 더 복잡한 응용 프로그램에서 분명해질 것이라고 생각하지만 하나는 상상할 수 없습니다. 요점을 완전히 놓치고있는 것이 두렵습니다. 하지만 요점이 있으면 알고 싶습니다!
이 패턴이 유리한 이유와 상황에 대해 간결하게 설명해 주 시겠습니까? 위의 예제와 같은 코드 스 니펫에 pub / sub 패턴을 사용할 가치가 있습니까?