
이전까지 나는 jsx를 써왔다. 왜냐? 처음에 다들 자바스크립트로 시작하고 나도 자바스크립트로 시작해 익숙해져 왔기 때문이다.
하지만 파이널 프로젝트를 하면서 다른 react 개발자에게 피드백을 받을 때 들었던 소리가 있다.
"왜 타입스크립트 안쓰세요?"
일단 타입스크립트를 알기전에 자바스크립트를 알아보자면 자바스크립트는 동적타입의 인터프리터 언어이다. 자바스크립트로 코드를 짠다면 코드를 작성하고 저장해 런타임에서 에러를 발견할 수 있다. 하지만 이 타입스크립트는? 저장을 굳이 하지 않아도 컴파일언어, 정적 타입 언어이기 때문에 저장을 하지 않아도 컴파일러 또는 바벨을 통해 자바스크립트 코드로 변환되어 코드 작성 단계에서 에러를 발견할 수 있다는 점이다.
또한 자바스크립트는 따로 타입을 지정해 주지 않지만 타입스크립트는 타입을 결정해줘야 하기 때문에 번거롭지만 속도가 매우 빠르다는 장점이 있다.
협업을 할때는 다른사람의 코드를 보고 해석하는 것도 일이다. 만약 자바스크립트 코드들을 보고 있노라면 가끔씩 이해가 안가는 코드들이 있었을 것이다.
하지만 타입스크립트는 타입을 일일히 지정해줘야하기 때문에 어떤 타입의 값을 리턴해야하는지가 다 나와있으므로 주석을 세세하게 달은 효과가 나타난다.
이는 코드의 흐름을 이해하기 쉽게 해준다.
사실 타입스크립트를 굳이 써야하나? 라는 의문이 들었는데 찾아보니까 장점도 명확하고 오류찾기나 코드가 알아보기 쉽게 된다는 장점이 큰 것 같아 사용하는 것 같다. 타입스크립트를 사용하면 마치 시어머니가 옆에서 잔소리하는 것 같다는 비유가 있을 정도로 자바스크립트를 사용하다가 타입스크립트로 바꾸면 귀찮은 점이 하나 늘지 않을까 싶지만 자바스트립트를 사용할때보다 15%정도 오류를 잡기 쉽다는 말도 있고, 요즘 많은 개발자들이 이용하는 추세인 것 같아 개인 프로젝트에서 적용해보려고 한다.