하나만 있어야 함
설정, 로거처럼 공유 인스턴스가 필요하지만 전역 상태 위험을 관리해야 한다.
싱글톤, 팩토리, 옵저버, 모듈 패턴은 서로 다른 문제를 다룹니다. 먼저 변경 지점과 의존 방향을 확인해야 합니다.
설정, 로거처럼 공유 인스턴스가 필요하지만 전역 상태 위험을 관리해야 한다.
타입별 객체 생성 조건이 늘어날 때 클라이언트 코드를 단순하게 둔다.
이벤트가 여러 수신자에게 퍼질 때 발행자와 처리자를 느슨하게 묶는다.
내부 상태를 숨기고 필요한 함수만 내보내 전역 오염을 줄인다.
패턴 적용 기준은 코드 양을 늘리는 일이 아니라, 다음 변경에서 건드려야 할 위치를 예측 가능하게 만드는 일입니다.