본문 바로가기

TIL ( CODESTATES)

Instantiation Patterns

: instance를 만드는 여러가지 패턴들

 

ES6 class 키워드가 나오기 전에는 JavaScript를 객체지향적으로 사용하기 위한 다양한 시도가 있었다.

이러한 다양한 패턴 중 Pseudoclassical한 방법을 자세히 다루려고 한다.

 

그 중 Pseudoclassical한 방법은 ES6 class 키워드를 이용한 방법과 내부적으로 정확히 동일한 원리로 작동한다.

 

 

Instantiation Patterns

: JavaScript의 Class 가 나오기 전 사용하던 4가지 Class 선언 방식

 

 

1. Functional Instatiation

 

 

 

2. Functional Shared Instantiation

 

이전의 Functional 방식은 instance를 생성할 때마다 모든 메소드를 someInstance에게 할당하므로, 각각의 instance들이 메소드의 수 만큼의 메모리를 더 차지하는 문제가 있었다.

 

 

 

하지만 Functional Shared Instatiation을 사용하면

someMethods라는 객체에 있는 메소드들의 메모리 주소만을 참조하므로 메모리 효율이 좋아진다.

 

 

 

 

 

 

 

 

 

 

 

 

 - Functional Shared 방식에서의 메모리 효율 비교

 

 

 

3. Prototypal Instantiation

 

4. Pseudoclassical Instantiation