Javascript and Typescript

.·2022년 6월 26일
0

blog

목록 보기
12/52

[1] 자바스크립트

  • 자바스크립트가 처음 만들어질때 의도가 개발자가 아닌 일반인들도 쉽게 접근하기 위해서 탄생한 언어이다. 그래서 다른 언어에 존재하는 int, float, string 등 과 같은 엄격한 자료형 타입을 가지지 않는 특성이 있다. 이러한 문제가 현재에는 오히려 발목을 잡고 있다고 생각한다.

  • 주로 웹개발에서 사용되는 언어로 2022년 기준 매우 많은 개발자를 보유하고 있다.

  • 자바스크립트가 발전되고 확장되면서 개발자가 수요가 매우 높아졌고 개발을 하면서 발생하는 에러 요소를 줄이기 위해 엄격한 자료형타입이 있어야 하지만 자바스크립트에는 var.let,const와 같은 자료형으로 스코프는 존재하지만 엄격한 타입을 구분할 수 없다.

  • 동적타입의 인터프리러 언어로써 컴파일을 거치지 않아서 런타임 도중에 에러를 발견할 수 있다.

  • 싱글스레드로 작동이 되면 멀티프로세싱이나 멀티스레딩을 지원하지 않는다.

[2] 타입스크립트

위와 같은 자바스립트를 보완하기 위해 타입스크립트가 만들어졌다고 생각된다.

  • 마이크로소프트에서 2012년에 개발

  • 자바스크립트에서 발전되어 만들어졌기 때문에 호환성이 좋아 기존 자바스크립트에서 타입만 지정하면 사용할 수 있다.

  • 타입스크립트는 컴파일러나 바벨을 통해서 자바스크립트로 변환되는 과정에서 타입과 관련한 오류를 검증할 수 있고 타입을 미리 변환해서 자바스크립트보다 실행속도가 좀 더 빨라진다.

  • 자바스크립트와 달리 타입을 작성해야 해서 코드를 작성하는 시간이 오래걸리고 타입을 작성하는 코드도 발생해서 자바스크립트보다 코드 작성 시간이 오래걸린다,

  • 타입을 작성하고 컴파일 과정을 거치므로 자바스크립트보다 컴파일 과정의 시간이 더 오래걸린다.

  • ES6에서 클래스, 인터페이스, 상속, 모듈 등 객체지향과 관련한 요소를 지원한다.

  • 에러와 관련된 피드백을 해주어서 실수할 수 있는 코드나 문제점들을 알려준다는 장점이 있다.

  • 타입스크립트를 배우는데 러닝커브가 존재한다. 혼자서 타입스크립트를 공부하기 어려워서 진입장벽에 부딪혀 포기하였다.

0개의 댓글