[Effective TypeScript] 6장 45-48 타입 선언과 @types

채동기·2023년 3월 26일
0

TypeScript

목록 보기
19/21

아이템 45) devDependencies에 typescript와 @types 추가하기

  • 타입스크립트를 시스템 레벨로 설치하면 안 됩니다. 타입스크립트를 프로젝트의 devDependencies에 포함시키고 팀원 모두가 동일한 버전을 사용하도록 해야 합니다.

  • @types 의존성은 dependencies가 아니라 devDependecies에 포함시켜야 합니다. 런타임에 @types가 필요한 경우라면 별도의 작업이 필요할 수 있습니다.

아이템 46) 타입선언과 관련된 세 가지 버전 이해하기

  • @types 의존성과 관련된 세 가지 버전이 있습니다. 라이브러디 버전, @tyeps 버전, 타입스크립트 버전입니다.
  • 라이브러리를 업데이트하는 경우, 해당 @types 역시 업데이트 해야합니다.
  • 타입 선언을 라이브러리에 포함하는 것과 DefinitelyTyped에 공개하는 것 사이의 장단점을 이해해야 합니다. 타입스크립트로 작성된 라이브러리 라면 타입 선언을 자체적으로 포함하고, 자바스크립트로 작성된 라이브러리라면 타입 선언을 DefinitelyTyped에 공개하는 것이 좋습니다.

아이템 47) 공개 API에 등장하는 모든 타입을 익스포트하기

  • 공개 메서드에 등장한 어떤 형태의 타입이든 익스포트합시다. 어차피 라이브러리 사용자가 추출할 수 있으므로, 익스포트하기 쉽게 만드는 것이 좋습니다.

아이템 48) API 주석에 TSDoc 사용하기

  • 익스포트된 함수,클래스, 타입에 주석을 달 때는 JsDoc/TsDoc 형태를 사용합시다. JsDoc/TsDoc 형태의 주석을 달면 편집기가 주석 정보를 표시해 줍니다.

  • @param, @return 구문과 문서 서식을 위해 마크다운을 사용할 수 있습니다.

  • 주석에 타입 정보를 포함하면 안 됩니다.

출처

<이펙티브 타입스크립트> (댄 밴더캅 지음, 장원호 옮김, 인사이트, 2021)

profile
what doesn't kill you makes you stronger

0개의 댓글