본문 바로가기
반응형
Programming/Javascript

자바스크립트(Javascript) 디자인패턴 - 퍼사드 패턴 (facade pattern)

by JAMINS 2020. 6. 3.

퍼사드 패턴은 객체에 대한 인터페이스를 제공한다. 메서드를 짧게 유지하고 하나의 메서드가 너무 많은 일을 하지 않도록 해야 하는 것이 설계 상 좋은 습관.

하지만, 이렇게 하면 메서드 수가 폭발적으로 증가할 수 있다.

두 개 이상의 메서드가 함께 호출되는 경우가 많으면, 하나로 묶어주는 새로운 메서드로 만드는 것이 좋다. 만약

stopPropagation();
preventDefault();

두 개의 메서드가 있을 때, 다른 목적이지만 함께 호출되어야 한다.
이럴 때 함께 호출하는 퍼사드 메서드를 생성하는 것이 좋다.

var myevent = {
    ...
    stop: function(e) {
        e.preventDefault();
        e.stopPropagation();
    }
}

이는 설계 변경과 리팩터링 수고를 덜어준다. 객체의 API역할을 하는 퍼사드를 생성해 적용할 수 있다. 기존 객체를 완전히 교체하기 전에 최신 코드가 새로운 API를 사용하면, 최종 교체할 때 변경폭을 줄일 수 있다.

참고

  • 자바스크립트 디자인패턴 책

댓글