동적 타입언어인 js 는 타입정의를 하지 않아도 되기 때문에 편하고 빠르게 코딩을 할 수 있다는 장점이 있습니다. js 의 매력은 무엇보다 유연하고 자유로운 문법에 있다고 저는 생각합니다. 타입언어에 비해 더 배우기 쉽고 다가가기 쉬우며 빠르게 가벼운 결과물들을 만들어 낼 수 있습니다. 이러한 특성은 자바스크립트가 대중적인 언어로서 자리매김하는데 큰 도움을 주었다고 생각합니다.
하지만 자바스크립트의 이러한 유연성은 SW의 복잡성을 통제하기에 적합하지가 않습니다. 시도때도 없이 터지는 런타임의 타입에러 때문에 머리를 쥐어뜯어보지 않은 js개발자는 아마도 없을 것입니다.
이러한 js의 고질적인 약점을 보완해 주는 도구가 바로 타입스크립트죠. 두둥~ 우리의 구세주.
물론 타입스크립트를 사용한다고 런타임 에러로 부터 완전히 자유로울 수는 없습니다. 하지만 IDE의 도움으로 코드를 작성하면서 바로 기본적인 타입오류들을 인지할 수 있음은 우리에게 상당히 만족스런 경험을 제공합니다.
새로운 프로젝트를 시작한다면 고민없이 타입스크립트를 선택할 것 같습니다. 하지만 기존 js로 시작했던 프로젝트에서도 타입스크립트를 뒤늦게 도입하는 것은 적절한 선택일까요?
이 글에서는 특별히 기존 js프로젝트를 타입스크립트로 변환하기까지의 과정을 기록하고 공유하려고 합니다.
두려움
관리하던 프로젝트의 소스파일의 개수는 500 ~ 600 개 정도로 그렇게 많지는 않았습니다.
더 늦기 전에 시작하고자..
점진적으로 바꾸는 것도 가능
테스트 파일은 ts로 변환하는 것이 적절치 않다는 결론
strictNullChecks 설정의 도입