반응형

목차

    싱글톤 패턴이란?

    인스턴스를 오직 한개만 제공하는 클래스

    • 시스템 런타임, 환경 세팅에 대한 정보 등, 인스턴스가 여러개 일 때 문제가 생길 수 있는 경우가 있다. 인스턴스를 오직 한개만 만들어 제공하는 클래스가 필요하다.

    이른 초기화

    synchronzied

    double checked locking (복잡)

    static inner 클래스 (가장권장)

    자바와 스프링에서 찾아보는 패턴

    자바

    runtime 메서드는 자바에서 제공하는 라이브러리이며 자바에서 지금 동작하는 환경의 정보를 담고있다. 하기와 같이 Runtime은 new로 생성이 불가능하다. 즉, 싱글톤 패턴으로 구현되어있는 것을 확인할 수 있다. 

    Spring

    bean이라는 스코프에서 관리하고 있기 때문에 hello == hello2 는 true를 반환한다.

    엄밀히 따지면 싱글톤  패턴이 쓰인 것은 아니지만 싱글톤 소코프를 사용한 케이스이다.

     

     

     

     

     

    싱글톤 패턴은 어떻게 쓰이나?

    • 스프링에서 빈의 스코프 중에 하나로 싱글톤 스코프
    • 자바 Java.lang.Runtime
    • 다른 디자인 패턴(빌더, 퍼사드, 추상 팩토리 등) 구현체의 일부로 쓰이기도 한다.

     

    반응형

    'Java > *****디자인패턴' 카테고리의 다른 글

    [싱글톤 패턴] Spring에서 싱글톤을 사용하는 이유  (0) 2022.05.05
    퍼사드(Facade) 패턴  (0) 2022.04.03
    빌더 패턴  (0) 2022.04.01
    디자인 패턴  (0) 2022.03.31
    디자인 패턴 싱글톤 패턴 개념 정리  (0) 2022.03.18

    + Recent posts