실행 전에 값의 형태가 계약과 맞는지 검사합니다.
TYPE CONTRACT
TypeScript는 실행 후 발견할 오류를 작성 중 계약 위반으로 바꾼다
자바스크립트의 유연성은 빠른 시작에 좋지만, 프로젝트가 커지면 의도와 다른 값이 늦게 터질 수 있습니다. 타입은 그 의도를 미리 고정하는 장치입니다.
의도 add(number, number) → number
문제 add(10, "20") → "1020"
해결 잘못된 인자를 실행 전 단계에서 표시
함수와 데이터가 어떤 값을 다루는지 코드에 남깁니다.
자동 완성, 이동, 리팩터링의 정확도가 올라갑니다.
변경 영향이 큰 코드에서 계약 위반을 빨리 발견합니다.
학습 기준타입 표기를 문법 추가가 아니라 함수 의도를 설명하는 문장으로
봅니다.
주의 기준any와 무리한 타입 단언을 남발하면 타입스크립트의 장점이 크게
줄어듭니다.