Lazy Initialization1 단일체(singleton) 패턴 디자인 패턴하면 가장 먼저 생각나는 싱글톤 패턴인데, 이는 단 하나의 클래스 인스턴스만을 갖도록 보장하고 전역적인 접근을 갖는다. 보통 싱글톤 패턴은 안티패턴으로 OCP에 위배되는 경우가 발생해서 테스트, 디버깅이 어려워지고 멀티 스레드 환경에서 동기화 처리를 안하면 여러 개가 생성된다고 얘기하며(어지간하면 피하라고..) 유의해서 사용하면 공통으로 객체를 사용되는 데 구현할 수 있다. Logger나 Thread / DB Connection Pool도 싱글톤 으로 구현돼있다. 보통 싱글톤 패턴에 동기화라면 서브클래싱해서 아래와 같이 작성한다. public class Singleton { private static Singleton singleton; public syncronized Singleton ge.. 2020. 5. 26. 이전 1 다음