[강의정리] 타입스크립트의 제네릭 타입

김재만·2022년 7월 28일
0

Polymorphism

다형성이란, 프로그램 언어의 요소들이 다양한 자료형을 띌 수 있는 성질이다. 타입스크립트에서는 호출 시그니처(Call Signature)에 고정 타입(Concrete Type) 이외의 제네릭 타입(Generic Type)을 지정함으로써, 여러가지 타입을 적용하여 코드의 재사용성을 높이는 방식으로 활용한다.

//기본 자료형
type CallSignature = {
	<GENERIC_NAME>(a:GENERIC_NAME) :type
}

//array
type CallSignature = {
	<GENERIC_NAME>(a:GENERIC_NAME[]) :type
}

위 코드에서 제네릭으로 대체한 a의 타입은 유동적으로 바뀌어 적용된다.

Generic Type

유형이 변할 수 있는 클래스, 함수 및 호출 시그니처를 생성하기 위해 사용하는 타입. 같은 코드임에도 다른 호출 시그니처를 생성-적용시킨다.

제네릭 타입은 한 시그니처에서 동시에 여러 가지를 생성하여 적용할 수도 있다.

type CallSignature = {
	<GENERIC_NAME1, GENERIC_NAME2>(a:GENERIC_NAME1, b:GENERIC_NAME2) :type
}

제네릭 타입을 이용해 특정 호출 시그니처를 생성(커스텀)하여 적용(재사용)할 수도 있다.

type Object<G> = {
    a: G
}

type Object_secondary = Object<{ a: string }>

제네릭 타입은 일반적인 호출 시그니처를 작성할 때도 활용 가능하다.

type A = Array<number>

function func(arr: Array<string>){}

마무리

오.. 좋은듯?

profile
듣는 것을 좋아하는 개발자입니다

0개의 댓글