본문 바로가기
개발/TypeScript

TypeScript

by 안뇽! 2021. 11. 9.
반응형

JS의 장점

JS의 장점은 무엇일까?

JS장점
엄격한 규칙이 없기 때문에 사용이 쉽고 우리가 원하는 방향으로 수정하기도 편하다는 것이다.
- 노마드 코더 -

 

하지만 위의 장점이 큰 프로젝트, 버그최소화에서는 단점으로 작용한다.

 

TypeScript

  • 동적언어타입 : 프로그램이 실행될 때 타입 분석을 진행, JS
  • 정적언어타입 : 런타임 이전에 타입 분석 진행, TS

정적 타입 분석의 장점은 시스템의 복잡도가 늘어남에 따라 빛나기 시작한다.

정적 언어 타입

정적 타입 언어는 프로그램이 실행되기 전에 상당수의 오류를 잡아낼 수 있다.
같은 종류의 언어가 동적 타입 언어에서는 코드리뷰, 심지어 실제 배포가 일어날 때 까지도 발견되지 않는 경우가 있다.
소프트웨어 개발 파이프라인에서 오류가 늦게 발견 될수록 더 큰 시간적, 금전적 비용을 치뤄야 하므로 미리 버그가 발견되는것은 매우 큰 이점이다.

 

예시

다음과 같은 index.ts를 컴파일해보자.

터미널에 console.log가 잘 실행되는것을 볼 수 있다.

 

이번엔 index.ts에서 sayHi의 인자를 1개 줄여보자.

타입스크립트에서 미리 에러를 알려준다.

한번 npm start를 해보자.

컴파일을 허락조차 하지 않는다.

 

위 코드를 JS에서 실행하면 

Hello June, you are 28, you are a undefined가 실행될 것이다.

이는 좋은일이 아는것을 알고 typescript에서 이야기해주는 것이다.

 

이렇게 typescript는 개발자의 실수가 실행되는것을 방지해준다.

반응형