디자인 패턴 중에서 보그(Borg) 패턴에 대해 알아보자. 보그는 단일 상태(monostate) 라고도 불리운다. 단일 동작을 위한 싱글톤(Singleton) 패턴과 매우 유사하지만 차이점은 상태(state)를 공유한다는 점이다. 즉, 여러개의 인스턴스는 하나의 상태(state)를 공유한다. 싱글턴을 사용한다면 서브클래싱(subclassing)에서는 보그 패턴이 더 나은 대안이 될 수 있다. 두 개 이상의 서브클래스가 하나의 슈퍼클래스를 상속한 경우 서브클래스별로 동작(behavior)을 다르게 재 정의하지만 상태는 여전히 공유되기 때문이다. class Borg: _shared_sate = {} def __init__(self): self.__dict__ = self._shared_sate if __na..