싱글톤 패턴

정인호·2022년 10월 9일
0

위코드-개념정리

목록 보기
16/19

싱글톤 패턴은 하나의 클래스에 오직 하나의 인스턴스만을 가지는 패턴이다.
보통 데이터베이스 연결 모듈에 많이 사용된다고 한다.

싱글톤의 장점
하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하며 사용하기 때문에 인스턴스를 생성할 때 드는 비용이 줄어드는 장점이 있다.

단점
의존성이 높다.

자바스크립트의 싱글톤 패턴
자바스크립트에서는 리터럴 {} 또는 new Object로 객체를 생성하게 되면 다른 어떤 객체와도 같지 않기 때문에 이 자체만으로 싱글톤 패턴을 구현할 수 있다.

const myObj = {
	a: 27;
}

const myObj2 = {
	a: 27;
}

console.log(myObj === myObj2);
//false

위 처럼 myObj와 myObj2는 서로 다른 인스턴스를 가지는 것을 알수 있다.

class Singleton {
	constructor() {
    	if (!Singleton.instance) {
        	Singleton.instance = this
        }
        return Singleton.instance
    }
    getInstance() {
    	return this.instance
    }
}

const a = new Singleton();
const b = new Singleton();
console.log(a === b);
//True

위는 Singleton.instanc라는 하나의 인스턴스를 가지는 Singleton 클래스를 구현한 것. 이를 통해 a와 b는 하나의 인스턴스를 가진다.

profile
경제학과를 졸업후 개발에 뛰어든 햇병아리입니다.

0개의 댓글