웹 개발

싱글톤 패턴이란?

_KH_ 2025. 4. 15. 10:01

싱글톤 패턴(Singleton Pattern)

: 객체를 오직 하나만 생성하도록 보장하고, 이 객체에 전역적으로 접근할 수 있도록 만드는 디자인 패턴

즉, 애플리케이션 전체에서 단 하나의 인스턴스만 존재하게 하고 싶을 때 사용하는 패턴이다.

 

[사용하는 경우]

 

  • 공통된 설정 정보를 전역에서 공유할 때
  • DB 연결, 로그 처리, 설정 파일 로딩 등에 인스턴스를 여러 개 만들 필요가 없을 때
  • 메모리 절약, 성능 개선, 데이터 일관성을 유지해야 할 때

 

[장점]

  • 객체를 한 번만 생성하므로 메모리 절약
  • 동일 인스턴스를 사용해 데이터 일관성 유지
  • 생성 비용이 큰 경우에도 효율적으로 관리 가능

[주의할 점]

  • 너무 많은 클래스가 싱글톤 객체에 의존하면 결합도가 높아져 유연성이 떨어짐
  • 테스트 어려움: 다른 객체처럼 쉽게 교체하거나 모킹(mocking)하기 어려움
  • 멀티스레드 환경에서 안전하게 구현해야 함 (동기화 필수)

 

'웹 개발' 카테고리의 다른 글

[Spring] 2일차  (1) 2025.04.18
[Spring] 1일차  (0) 2025.04.16
중간 프로젝트 - 테이블 정규화 및 반정규화  (0) 2025.04.12
do, did  (1) 2025.04.11
java.util.Date와 java.sql.Date 차이  (0) 2025.04.10