끄적끄적

타입스크립트란? 본문

Front-end/Typescript

타입스크립트란?

mashko 2019. 5. 26. 22:38
반응형

출처: Microsoft

 

TypeScript는 Microsoft에 의해 개발/관리되고 있는 오픈소스 프로그래밍 언어입니다. 대규모 애플리케이션을 개발하는 데 자바스크립트가 어렵고 불편하다는 불만에 대응하기 위해 개발되었습니다.

TypeScript는 스크립트 언어의 표준인 ECMA Script (줄여서 ES)의 표준을 따르기 때문에 JavaScript 영역을 침범하지 않고 최신 ES를 지원합니다.

'새로운 ES가 나올 때 마다, TypeScript 역시 버전 업을 하여 최신 ES의 기능을 지원합니다.'

 

타입스크립트의 특징

  • 컴파일 동작
  • 정적 타입 지정
  • 객체 지향 프로그래밍 지원
  • interfaces & namespaces & modules
  • generic
  • mixins

TypeScript를 사용하면 정적 타이핑이 가지는 장점을 Javascript에도 적용할 수 있고, 정적 타이핑은 컴파일 타임에 타입을 체크합니다.

정적 타이핑은 런타임 에러보다는 컴파일 타임 에러가 에러를 줄이기에 더 낫습니다.

 

TypeScript의 단점

바로 생산성입니다. TypeScript는 생산성보다는 안정성이 중요시 되는 대규모 JavaScript 어플리케이션 개발에 적합합니다.(즉, 지속적이며 규모가 큰 서비스에 적용하여 오랜기간 유지보수와 여러 명의 개발자가 존재하는 곳에서 협업하여 개발할 때 빛을 봅니다.)

또한, 기존 자바스크립트 개발방식에 익숙해져 있는 개발자(동적타입의 언어)는 러닝 커브가 존재하기도 합니다.

물론 역량에 따라 빠르게 익힐 수 있겠지만 프로젝트를 하는 모든 개발자 분들은 정적 타입 프로그래밍에 대한 개발 사고 방식을 가지고 개발을 진행 해야 합니다.

 

TypeScript의 장점

정적 타입 지원이 가능하다. 제일 큰 장점이라 생각되네요.

컴파일 단계에서 오류를 포착 할 수 있으며, 명시적인 정적 타입 지정은 개발자의 의도를 명확하게 코드로 기술할 수 있게 됩니다.

코드의 가독성을 높이고 예측이 가능 하며 디버깅을 쉽게 할 수 있게 됩니다.(즉, 에러케이스를 빠르게 찾아 낼 수 있게됩니다)

또한, 강력한 객체지향 프로그래밍이 가능하게 됩니다.

인터페이스와 제네릭 등 강력한 객체지향 프로그래밍 지원으로 크고 복잡한 프로젝트의 추상화가 가능해집니다.

또한 객체 지향 언어에 익숙한 개발자가 자바스크립트 프로젝트를 수행하는데 진입장벽을 낮추는 효과도 있습니다.

 

반응형
Comments