[Effective Java] 아이템 3 : private 생성자나 열거 타입으로 싱글턴임을 보증하라
Singleton 싱글톤 패턴은 인스턴스화를 제한하고, 클래스의 하나의 인스턴스만 JVM에 존재하도록 한다. 싱글톤 패턴은 Global access point에서 인스턴스를 가져올 수 있도록 제공한다. 로깅, 드라이버 개체, 캐싱 및 스레드 풀에 사용된다. Abstract Factory, Builder, Protorype and Facade 등과 같은 디자인 패턴에도 사용된다. 장점 객체를 생성하면 재사용이 가능해서 메모리 사용 낭비를 막을 수 있다. 전역 객체이기 때문에 다른 객체와도 공유가 가능하다. 단점 클래스의 싱글턴화 시 클라이언트 테스트가 어려워진다. 타입을 인스턴스 정의 시 구현한 인터페이스로 만든 싱글턴이 아닐시 인스턴스를 Mock로 대체 불가 싱글턴 생성 방식 Public Static F..
2022.03.10