타입스크립트 올인원 : Part2 - 세션0

안지환·2023년 11월 29일
0

강의

목록 보기
1/10
post-custom-banner

⭐️ Overview

타입 지원 여부 파악하기

노드 생태계 대부분의 모듈은 Npm에서 다운을 받습니다.

Npm 라이브러리에 따라 TS(=TypeScript)가 지원 여부가 다릅니다.
예시로 Redux 라이브러리를 확인해보겠습니다.

Redux 라이브러리 상단에는 TS 지원이라는 마크가 붙여져 있습니다.
이 라이브러리는 기본적으로 TS를 지원을 합니다. 이 경우에는 라이브러리를 설치만 해도 TS를 지원을 받을 수 있습니다.

Axios 라이브러리를 확인해보겠습니다.

Axios 라이브러리 또한 상단에 TS 지원 마크가 붙여져 있습니다. 그렇지만 Redux와 Axios와의 TS 지원에 차이점이 있습니다.


Axios는 JS 비율이 높고 TS 비율이 낮습니다.

Redux는 TS 비율이 높고 JS 비율이 낮습니다.

라이브러리 분석하기

위 두 라이브러리에 차이점은 코드 DTS 확장자 파일에 따라 달라집니다.

axios 라이브러리는 JS로 구현 되어 있지만 TS 사용하는 유저들을 위해 package.json 파일 내에 index.d.ts파일에 정의를 합니다.

// package.json
  "type": "module",
  "types": "index.d.ts",

redux 라이브러는 TS로 구현 되어 있지만 index.d.ts파일에 구성되어 있습니다.

  "module": "dist/redux.legacy-esm.js",
  "types": "dist/redux.d.ts",

Typscript는 JavaScript로 변환이 되어야 라이브러리를 사용 할 수 있습니다.

타입 지원 없는 라이브러리


jQuery 라이브러리는 TS 마크 대신 DT 마크가 붙여져 있습니다.
이 라이브러리는 Types가 정의 되어 있지 않는 라이브러리 입니다.

DT 마크가 붙여진 라이브러리는 Definitely Typed라고 정의합니다.
이 라이브러리의 특징은 특정인이 만드는 것이 아닌 누구나 기여 할 수 있는 오픈소스입니다.

유명한 라이브러리 React, Express 등 DT로 정의되어 있습니다.

참고 사항

profile
BackEnd Developer
post-custom-banner

0개의 댓글