싱글톤 singleton 패턴 - 자바스크립트 예제
SW설계디자인패턴
읽는데 3분 소요
처음 쓰여진 날: 2025-09-02
마지막 수정일: 2025-09-02
조회수: 563
요약
객체지향 프로그래밍의 핵심, GoF(Gang of Four) 디자인 패턴 중 생성 패턴인 싱글톤(Singleton)을 자바스크립트 코드와 함께 알아봅니다. 정처기 실기 대비를 위한 주관식 문제가 포함되어 있습니다.
싱글톤 패턴 요약
| 패턴 종류 | 핵심 키워드 |
|---|---|
| 싱글톤 (Singleton) | 한 클래스에 단 하나의 객체만 존재하도록 강제 |

싱글톤 (Singleton) 패턴
싱글톤 패턴은 이름 그대로, 한 클래스에 단 하나의 객체만 존재하도록 강제하는 디자인 패턴입니다. single이라는 단어에서 알 수 있듯, 인스턴스가 유일하다는 것이 핵심입니다.
기본 구조
클래스 기반 언어에서 싱글톤은 보통 다음과 같이 구현합니다.
javascript
코드 하이라이팅 중...
new Singleton()을 두 번 호출했지만, 변수 a와 b는 정확히 동일한 인스턴스를 참조합니다. 🎯
언제 필요할까?
애플리케이션 전역에서 공유되어야 하는 자원이 있을 때 유용합니다. 대표적인 예로 로그 수집기(Logger) 가 있습니다.
만약 Logger 인스턴스가 여러 개라면 로그가 분산되어 기록되는 문제가 발생할 수 있습니다. ⚠️
javascript
코드 하이라이팅 중...
이 문제를 해결하기 위해 Logger에 싱글톤 패턴을 적용하면, 여러 곳에서 인스턴스를 생성하더라도 실제로는 단 하나의 인스턴스만 사용하게 되어 로그를 중앙에서 관리할 수 있습니다.
javascript
코드 하이라이팅 중...
💡 싱글톤 패턴 중요 키워드
- 클래스에 오직 한 인스턴스만 존재하도록 강제한다.