야매로 잠시 써본거라서 정확하지 않을수도 있음다 ㅇㅇ

- 제네릭과 타입추론이 생각보다 많이 불편.
타입 2개를 써먹으려면
function fnName<T, K = keyof T>{...}
처럼 해야하는데 C++ 템플릿 선언에 비해 선언이 좀 짜증나는 듯.

음. . 그리고 auto 키워드 좀 있었으면.
타입이 길어지면 alias를 하게되는데 alias후 못알아먹는 경우가 간혹 발생한드아..

- 함수 오버로딩
이게 제일 빡치는 부분.
js 한계 때문에 발생하는데 오버로딩용 선언을 여러개 해두고 모든것을 커버할 수 있는 단 하나의 함수로 구현해야됨..

인생살면서 이따위 오버로딩은 처음본다... ㅋㅋㅋ
( 추가) 리엑트랑 같이 쓰면 더 짜증나는게 hooks는 조건문안에서 못쓰게 되는등의 제약이 제네릭+오버로딩과 만나면 상당히 그시기한 상황들을 많이 만나볼수 있습니다.


코어나 자주쓸 유틸부분에 제네릭+오버로딩은 당연히 들어가야할텐데 any 안쓰고 구현하려면 고통 좀 받을듯 ㅋㅋ



한줄요약 : 쓰면 쓸수록 js의 거지같은 설계나 한계를 알게된다.

- dc official App