Singleton pattern : 하나의 클래스에 오직 하나의 인스턴스 만을 가지는 패턴, 보통 데이터베이스 연결 모듈에 많이 이용됨
장점 : 하나의 인스턴스를 만들고 다른 모듈들이 공유하여 사용하기 때문에 인스턴스 생성 비용 줄어듬
단점
의존성 주입 원칙 : 상위모듈은 하위모듈에서 어떠한 것도 가져오지 말하야한다
팩토리 패턴은 객체 생성부분을 뗴어내 추상화한 패턴이자 상속관계에 있는 클래스들 중에 상위 클래스가 뼈대를 정하고 하위 클래스에서 구체적인 구현을 정하는 패턴이다
객체의 행위를 직접 수정하지 않고 캡슐화한 알고리즘을 컨텍스트 안에서 바꿔주면서 행위를 수행한다