정처기 감자정처기 감자
SW 설계디자인패턴

싱글톤 singleton 패턴 - 자바스크립트 예제

SW설계디자인패턴
읽는데 7분 소요
처음 쓰인 날: 2025-09-02
마지막 수정일: 2025-09-02
조회수: —

요약

객체지향 프로그래밍의 핵심, GoF(Gang of Four) 디자인 패턴 중 생성 패턴인 싱글톤(Singleton)을 자바스크립트 코드와 함께 알아봅니다. 정처기 실기 대비를 위한 주관식 문제가 포함되어 있습니다.

싱글톤 패턴 요약

패턴 종류핵심 키워드
싱글톤 (Singleton)한 클래스에 단 하나의 객체만 존재하도록 강제
싱글톤 패턴 감자
싱글톤 패턴 감자

싱글톤 (Singleton) 패턴

싱글톤 패턴은 이름 그대로, 한 클래스에 단 하나의 객체만 존재하도록 강제하는 디자인 패턴입니다. single이라는 단어에서 알 수 있듯, 인스턴스가 유일하다는 것이 핵심입니다.


기본 구조

클래스 기반 언어에서 싱글톤은 보통 다음과 같이 구현합니다.

javascript
코드 하이라이팅 중…

new Singleton()을 두 번 호출했지만, 변수 a와 b는 정확히 동일한 인스턴스를 참조합니다. 🎯

언제 필요할까?

애플리케이션 전역에서 공유되어야 하는 자원이 있을 때 유용합니다. 대표적인 예로 로그 수집기(Logger) 가 있습니다.

만약 Logger 인스턴스가 여러 개라면 로그가 분산되어 기록되는 문제가 발생할 수 있습니다. ⚠️

javascript
코드 하이라이팅 중…

이 문제를 해결하기 위해 Logger에 싱글톤 패턴을 적용하면, 여러 곳에서 인스턴스를 생성하더라도 실제로는 단 하나의 인스턴스만 사용하게 되어 로그를 중앙에서 관리할 수 있습니다.

javascript
코드 하이라이팅 중…

💡 싱글톤 패턴 중요 키워드

  • 클래스에 오직 한 인스턴스만 존재하도록 강제한다.

정보처리기사 기출 문제

문제를 불러오는 중이에요.
문제를 불러오는 중이에요.
문제를 불러오는 중이에요.
메가커피와 함께, 홈페이지 개선에 참여하세요! ☕
혹시 이용에 불편한 점이나 개선이 필요한 부분을 발견하셨나요? 댓글로 알려주시면 더 나은 감자가 될 수 있어요! 🥔 제보해주신 모든 분께 메가커피 기프티콘을 드립니다! (본인 이메일로 댓글 달아주셔야해요~)

관련 글

(42개)
제목태그업데이트시험
디자인패턴 정보처리기사 실기 모의 시험
디자인패턴SW설계디자인패턴
2026-07-10응시
추상 팩토리 abstract factory 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2026-10-20-
빌더 builder 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-02-
디자인패턴23개
제목태그업데이트시험
디자인패턴 정보처리기사 실기 모의 시험
디자인패턴SW설계디자인패턴
2026-07-10응시
추상 팩토리 abstract factory 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2026-10-20-
빌더 builder 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-02-
팩토리 메서드 factory method 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-11-03-
프로토타입 prototype 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2026-10-20-
책임 연쇄 chain of responsibility 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-11-03-
커맨드 command 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-09-01-
인터프리터 interpreter 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-09-01-
이터레이터 iterator 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-09-01-
중재자 mediator 패턴 - 타입스크립트 예제
디자인패턴SW설계디자인패턴
2026-10-20-
메멘토 memento 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-10-29-
옵저버 observer 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
상태 state 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-09-01-
전략 strategy 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
템플릿 메서드 template method 패턴 - 타입스크립트 예시
디자인패턴SW설계디자인패턴
2025-09-01-
방문자 Visitor 패턴 - 타입스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
어댑터 adapter 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-02-
브릿지 bridge 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
컴포지트 composite 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
데코레이터 decorator 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
퍼사드 facade 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
플라이웨이트 flyweight 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2025-09-01-
프록시 proxy 패턴 - 자바스크립트 예제
디자인패턴SW설계디자인패턴
2026-10-20-
SW설계19개
제목태그업데이트시험
릴리스 노트 작성 항목
제품 소프트웨어 패키징SW설계제품 소프트웨어 패키징
2026-06-26-
UI 정보처리기사 실기 모의 시험
UI/UXSW설계UI/UX
2026-05-04응시
애자일(Agile) 방법론
애자일SW설계방법론애자일
2026-10-01-
코딩 컨벤션과 표기법
코딩 스타일SW설계코딩 스타일
2026-10-01-
소프트웨어 비용 산정 기법
비용 산정SW설계비용 산정
2026-10-01-
비기능 요구사항
요구사항SW설계요구사항
2026-10-16-
리팩토링(Refactoring)
리팩토링SW설계리팩토링
2026-10-01-
UI 설계 원칙
UI/UXSW설계UI/UX
2026-10-01-
UI 종류 (CLI·GUI·NUI·OUI·VUI)
UI/UXSW설계UI/UX
2026-10-01-
SW 설계 왕감자 정보처리기사 실기 모의 시험
SW설계SW설계
2025-11-04응시
앱 설계(디자인패턴, 응집도-결합도,객체지향) 정보처리기사 실기 모의 시험
앱설계SW설계앱설계
2025-10-08응시
객체 지향 설계 원칙 - SOLID
객체지향SW설계앱설계객체지향
2026-10-20-
럼바우 객체 모델링 - 객(정)동기
객체지향SW설계앱설계객체지향
2026-10-20-
UML 정보처리기사 실기 모의 시험
UMLSW설계UML
2025-10-08응시
소프트웨어 아키텍처 4+1 뷰 모델
UMLSW설계UML
2025-09-26-
UML 클래스 다이어그램의 6가지 관계
UMLSW설계UML
2026-10-11-
UML 다이어그램
UMLSW설계UML
2026-10-20-
소프트웨어 모듈 응집도와 결합도
응집도/결합도SW설계앱설계응집도/결합도
2026-10-20-
정보처리기사 실기를 위한 디자인 패턴 암기 방법
앱설계SW설계앱설계
2026-10-16-

댓글

댓글을 불러오고 있어요
정처기 감자정처기 감자

정보처리기사 합격
도와줄라고 하는 감자

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 3회 이론 압축
  • 26년 3회 코딩 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 3회 이론 압축
  • 26년 3회 코딩 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매
© 2025 재현기획개발. All rights reserved.
  • 정처기 감자의 시작
  • 업데이트 로그
  • 개인정보 처리방침
  • 이용약관
상호명 : 재현기획개발 / 주소: 서울특별시 영등포구 영등포로 150, 지하1층 108호 L145 가라지(당산동1가, 생각공장 당산) / 대표: 김재현 / 전화: 010-8158-7127 / 통신판매업신고: 제2025-서울영등포-1569호 / 이메일: contact@edugamja.com / 사업자등록번호: 573-51-00999