싱글톤 패턴 강의에 나온 예시 질문
안녕하세요 큰돌님 싱글톤 패턴 강의를 듣다가 예시 코드를 보고 궁금한 점이 있어서 질문 드립니다.

강의에서 보여주셨던 mongoDB의 커넥션 코드에서 싱글톤 패턴은 DB.instance가 존재하면, 기존의 DB.instance를 반환함으로써 인스턴스 생성에 대한 비용을 절감하는 것이라고 이해하였습니다.
그런데 여기에서 connect()함수의 this.instance는 인스턴스 내부에 instance라는 속성이 없기 때문에 undefined가 되므로 DB.instance를 반환해야 하는게 아닌지 질문드립니다.
답변 2
1
안녕하세요 ㅎㅎ
그런데 여기에서 connect()함수의 this.instance는 인스턴스 내부에 instance라는 속성이 없기 때문에 undefined가 되므로 DB.instance를 반환해야 하는게 아닌지 질문드립니다.
-> 처음에 DB클래스기반 객체 생성시 -> 생성자함수가 발동됨 -> 그 이후 connect() 함수 호출시 -> 반환하기 때문에 무조건 값이 있게 됩니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
1
안녕하세요, 인프런 AI 인턴입니다. backdev0226님.
싱글톤 패턴을 이용한 예제 코드에 대한 질문 감사합니다. 싱글톤 패턴은 단일 인스턴스의 생성을 보장하는 디자인 패턴으로, 주로 데이터베이스 연결과 같이 리소스 소모가 큰 작업이 반복되지 않도록 합니다.
질문하신 내용에 대해 설명드리면, 싱글톤 패턴에서 this.instance가 undefined가 아닌 이유는 생성자 내에서 인스턴스를 한번만 생성하고 저장해 두었기 때문입니다.
클래스 내부의
this:this키워드는 생성된 해당 인스턴스 자체를 나타냅니다. 따라서this.instance는 생성된 특정 인스턴스의 속성을 참조하게 됩니다.새로운 인스턴스 생성 방지: 처음 생성된 인스턴스를 매번 반환하므로 이후의 호출에서는 새로운 인스턴스를 만들지 않고 기존의 인스턴스를 재사용합니다.
이에 대한 구체적인 설명과 예제를 싱글톤 패턴에서 동시에 다중요청이 들어오는 경우을 통해 확인하실 수 있습니다. 이 링크에서 싱글톤 패턴의 멀티스레드 환경에서의 처리를 다루고 있는 내용을 참조하실 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
REST API (Self-descriptive messages)
0
28
1
시스템 엔지니어 관련 질문입니다.
0
55
2
오버라이딩 관련하여 질문드립니다.
0
64
2
교착상태의 4가지 필요조건이 필요충분조건이 아닌 이유
0
94
1
렌더 트리, 렌더 레이어와 그래픽 레이어
0
58
2
로컬스토리지, 세션스토리지, 쿠키의 공통점
0
68
1
IPv4가 IPv6보다 빠른 경우
0
103
2
UDP가 전송계층의 역할을 못하는 건 아닌지
0
59
1
Path MTU 발견하였음에도 패킷 분할이 필요한 이유?
0
66
2
교재의 LFU 알고리즘에서 6번이 왜 히트인가요?
0
64
2
페이지 교체 알고리즘? 프레임 교체 알고리즘?
0
83
2
Static 키워드가 메모리에 올라가는 시점
0
78
2
헤더 압축부분 질문드립니다
0
74
2
공유 캐시 관련 질문 드립니다.
0
56
2
컨텍스트는 context와 contextual information으로 나눠진다는게 무슨뜻인가요?
0
201
1
회선과 대역폭의 관계
0
63
2
44강 질문
0
96
2
버스 토폴로지 질문 있씁니다
0
56
1
자바스크립트, xml 문법 관련
0
67
2
전략패턴과 의존성주입 질문
0
69
2
Model이 비즈니스 로직을 담당하나요?
0
108
2
CS 공부 하는 법
0
181
2
큰돌님 블로그에 개념정리해서 올려도될까요!
0
137
2
FIN 세그먼트 질문
0
72
2





