TypeScript란?
타입스크립트는 자바스크립트의 슈퍼셋인 오픈소스 프로그래밍 언어이다. 마이크로소프트에서 개발, 유지하고 있으며 엄격한 문법을 지원한다. C#의 리드 아키텍트이자 델파이, 터보 파스칼의 창시자인 Anders Hejlsberg가 개발에 참여한다. 클라이언트 사이드와 서버 사이드를 위한 개발에 사용할 수 있다. 타입스크립트는 자바스크립트 엔진을 사용하면서 커다란 애플리케이션을 개발할 수 있게 설계된 언어이다.자바스크립트의 슈퍼셋이기 때문에 자바스크립트로 작성된 프로그램이 타입스크립트 프로그램으로도 동작한다. 타입스크립트에서 자신이 원하는 타입을 정의하고 프로그래밍을 하면 자바스크립트로 컴파일되어 실행할 수 있다. 타입스크립트는 모든 운영 체제, 모든 브라우저, 모든 호스트에서 사용 가능한 오픈 소스이다. - 위키 백과 -
TypeScript 사용 이유 및 사용방법
- 타입스크립트는 자바스크립트에 타입을 부여한 언어
- 자바스크립트으 확장된 언어라고 볼수 있음
- 타입스크립트는 브라우저에서 실행하려면 파일을 한번 변환(컴파일, compile)해 주어야 함
Why TypeScript?
1. 에러의 사전 방지
![](https://velog.velcdn.com/images/joung5846/post/0bfb6a54-6f20-4eaf-a76d-d2d4b026e46e/image.png)
2. 코드 가이드 및 자동 완성(개발 생산성 향상)
장단점
장점
- 에러 에방
- 코드 작성시 알맞지 않은 타입을 넣거나 혹은 타입을 넣지 않았을 경우 사전에 IDE에서 오류 경고
- 사전에 오류를 디버깅, 나중에 디버깅 하는 시간을 줄여줌
- 생산성 향상에 기여
- 실행 속도
- 런타임(실행) 시에 사람이 미리 타입을 결정했기 때문에 기계가 할 일을 덜어 실행 속도가 매우 빠름
- 안정성 & 협업용이성
- 타입을 명시하고 컴파일 시 오류를 찾기 때문에 보다 안정적
- 슈퍼셋
- 타입스크립트는 자바스크립트의 슈퍼셋, 즉 자바스크립트의 + 알파임
- 자바스크립트와 100% 호환
- 클래스, 인터페이스 등 객체지향 프로그래밍 패턴을 제공
단점
- 초기 세팅
- 새로운 언어
- 더 많은 코드
- 자바스크립트 보다 더 많은 코드를 작성해야 함
- 개발 기간이 늘어나며, 코드를 더 작성하기 때문에 가독성이 더 떨어지는 부작용도 있음