언린이 2021. 9. 25. 11:01

Singleton 패턴은 단 하나의 인스턴스만을 생성하여 사용할 수 있게 해주는 패턴입니다.

 

 

활용 상황

  • 공통된 객체를 여러개 생성하여 사용해야 할때 유용합니다.
  • 전역에서 사용될 하나의 객체를 만들어야 할때 유용합니다.

 

 

Singleton 패턴의 장단점

  • 장점
    • 하나의 인스턴스를 사용하기 때문에 메모리 낭비를 방지할 수 있습니다.
    • 하나의 전역 인스턴스를 사용하기 때문에 다른 클래스에서 데이터를 공유할 수 있습니다.
  • 단점
    • Singleton 인스턴스가 너무 많은 일을 하거나 많은 데이터를 공유시킬 경우, SOLID 원칙 중 SRP, OCP 원칙에 위배됩니다.
    • 수정과 테스트가 어려워집니다.
    • 꼭 필요한 경우가 아니면 지양해야 합니다.