Typescript
- 타입스크립트(Typescript): Microsoft에서 개발한 자바스크립트(Javascript) 기반 언어
- 정적 타입 언어: 자바스크립트에 정적 타입 문법을 추가한 상위 언어, 반면 자바스크립트는 런타임에 따라 결정되는 동적 타입 언어
// 타입을 명시적으로 선언 const foo: string; const bar: number; const baz: boolean;
- 컴파일 언어: 자바스크립트로 컴파일 과정을 거친 후 실행할 수 있음, 반면 자바스크립트는 코드를 읽어가며 명령을 바로 처리하는
인터프리터 언어
- 그 외
Generic
,Enum
,Interface
등의 기능들이 있음
타입스크립트 장단점
- 장점
- 타입(Type) 시스템: 컴파일 과정에서 타입을 사용하기 때문에 에러를 예방할 수 있으며, 디버깅이 가능함
- 높은 생산성: 객체 필드나 함수 매개변수로 들어오는 변수의 이름과 자료형 확인을 쉽게 할 수 있어, 자바스크립트보다 코드 작성을 쉽고 직관적으로 할 수 있음
- 자바스크립트의 슈퍼셋: 자바스크립트 프로젝트 코드를 수정하여, 타입스크립트로 점진적으로 적용할 수 있음
- 슈퍼셋(Superset): 특정한 언어의 모든 기능을 포함하면서, 다른 기능까지 포함하도록 향상 또는 확장된 것
- 단점
- 초기 세팅이 어려움: 자바스크립트 엔진에서 실행되기 때문에, 따로 설치해야하는 모듈이나 컴파일을 위한 옵션(tsconfig.json)을 설정해주어야 함
- 타입 지정으로 인한 생산성 저하: 타입의 지정이나, interface, class등에 익숙하지 않은 경우 생산성이 저하될 수 있음
- 초기 세팅이 어려움: 자바스크립트 엔진에서 실행되기 때문에, 따로 설치해야하는 모듈이나 컴파일을 위한 옵션(tsconfig.json)을 설정해주어야 함
Ghost