타입스크립트의 강점은 데이터의 타입을 저장하고 보존하는것이다. (그게 인자건 무엇이든)

 

그렇기에 필요로하는 타입을 정하는데 과거에는 any 타입을 남발했지만 요즘에는 이보다 더 세련된 방법이 있다.

 

바로 제너릭이라고 말하는것이다.

 

아래를 보자

 

function anyTypeFunction(arg: any): any { 
	return arg; 
}

 

타입스크립트에 처음 입문하거나 타입을 확신할 수 없을때 이렇게 쓰는 경향이 있다.

 

나도 그런다.

 

하지만 이렇게 함으로써 인자의 최초타입은 유실되었고 이후 전달받을 데이터의 타입도 신뢰성이 떨어진다.

 

이럴땐

 

function genericFunction(arg: T): T { 
	return arg; 
}

이렇게 해보자 위 함수는 인자의 타입을 제너릭이라 명명하여 해당 인자의 타입을 강제로 변환시키지 않으며

 

내부 로직을 거쳐도 보존된 타입을 그대로 다시 돌려준다.

 

이로써 타입의 신뢰도와 예측불가능한 상황을 줄일 수 있다.

 

이것으로 인해 얻은 강점은

 

1. 인자의  타입의 변동성에도 대응할 수 있다.

 

2. 타입의 안정성을 확보할 수 있다.

 

3. 가독성이 상승한다.

 

 

 

+ Recent posts