본문 바로가기
TypeScript

[TS] 타입스크립트 시작하기!

by Meaning_ 2022. 6. 20.
728x90
반응형

타입스크립트를 사용하면 타입 안정성에 있어서는 자바나 C#하고 비슷한 개발경험을 가질 수 있다.

js개발자인데 생산성도 높이고 버그도 줄이고 싶으면 TS가 딱이다.

 

컴퓨터에 Node.js만 설치되어있으면 시작할 수 있다! 그리고 니꼬쌤 말로는 vsCode를 IDE로 쓰는것을 추천했다

 

타입 스크립트는 왜 만들어졌을까?

 

이유는 타입 안정성 때문이다. 이로 인해 코드에 버그가 엄청 줄어들고 런타임 에러도 줄어든다.

결론적으로 타입 안정성은 타입스크립트의 가장 큰 장점이라 할 수 있다! ✨

 

그럼 타입이 왜 중요할까?

 

자바스크립트는 에러를 보여주지 않으려고 정말 애쓴다. 개발자의 모든것을 이해해주려는 아주 유연한 언어이다.

[1,2,3,4]+'false'

를 하면

자바스크립트는

'1,2,3,4false' 라고 출력한다. 배열도 사라지고 bool형이 string이 되는 아주 기이한 일이 생긴다..ㅋㅋㅋ

 

그러면 자바스크립트가 개발자에게 에러를 뿜어내며 왜 그런 멍청한 코드를 쓰는거지? 라고 에러메세지를

줄 만도 하지만 자바 스크립트는 그런 에러를 보여주지 않는다.

결과가 엉망이여도 개발자를 이해한다ㅋㅋㅋ

 

nico 객체에는 tomato라는 name이 없고 value만 있는데 nico.tomato를 했을 때 에러메세지가 뜨지 않는다..!!

 

근데 타입스크립트에서는 tomato라는 name이 객체에 없으니까 바로 에러메세지를 띄워준다. 

 

 

타입스크립트는 우리의 코드를 확인한 다음에 자바스크립트 안에서 바보같은 실수가 일어나지 않게 확인해준다.

타입스크립트 코드를 작성해서 컴파일하면 보호장치 없는 일반적인 자바스크립트 코드가 된다.

하지만 타입스크립트 코드에 에러가 있으면 자바스크립트로 컴파일 되지 않는다.

타입스크립트가 에러가 발생할것 같은 에러를 감지해도 자바스크립트로 컴파일 되지 않는다.

즉, 보호장치가 유저가 코드를 실행하는 런타임에만 발생하는게 아니다..!

 

에러메세지가 number가 아닌 string을 할당했다고 뜬다.  여기서 타입스크립트가 타입추론을 하는 것을 알 수 있다!

728x90
반응형

댓글