반응형
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는 개발자의 실수가 실행되는것을 방지해준다.
반응형
'개발 > TypeScript' 카테고리의 다른 글
Typescript narrowing과 assertion (0) | 2022.01.14 |
---|---|
타입스크립트 함수에 타입지정은 파라미터와 리턴값 두군데에 한다! (0) | 2022.01.14 |
타입스크립트 Union Type (0) | 2022.01.13 |
타입스크립트 컴파일 과정 (0) | 2022.01.10 |
TypeScript의 기본 타입 (0) | 2021.11.09 |