최근 TypeScript로 짜여있던 Svelte 코드를 JS+JSDoc 다시 작성한다는 소식이 JS커뮤니티를 떠들썩하게 했는데요, 이에 대한 @Rich_Harris의 답변이 인상적입니다:
→ Svelte팀은 TS의 지원을 중단하는 것이 아닙니다. Type safety를 포기하는 것도 아닙니다.
→ JSDoc 사용은 TypeScript에서 공식 지원합니다. TS를 사용하는 Svelte 유저분들에겐 전과 똑같은 기능을 지원할 것입니다.
→ JSDoc을 사용하기 원하는 이유가 몇가지 있습니다. 첫번째, JSDoc으로 작성된 Svelte 패키지는 작아집니다. 더이상 TS→JS sourcemap을 배포할 필요가 없기때문이죠.
→ 두번째, Svelte 개발 중 디버깅이 더 쉬워집니다. Go To Definition이 구현 코드가 아닌 타입 정보가 담긴 index.d.ts로 끌려간적이 있으신가요? JSDoc으로 작성된 Svelte코드는 그런 불편함도 없을 것이고, 또 그 자리에서 즉시 소스를 수정을 해볼 수도 있죠.
→ 세번쩨, Svelte에 기여하기가 더 쉬워질 것 입니다. TypeScript은 빌드 시스템의 사용을 의무화 합니다. 또 TS 개발을 수월하게 만들어 주는 코드 링크나 소스 수정을 즉각 빌드하는 watch 시스템의 사용도 필요합니다.
→ 더 나아가 복잡한 빌드 시스템의 제거는 Svelte팀의 다양한 테스트 파이프라인의 관리 및 디버깅 과정도 수월하게 만들어 줄거라 기대하고 있습니다.
→ TS to JSDoc Migration은 어떤 이념이나 철할은 토대로 내린 결정이 아닙니다. 단순히 Svelte팀에 더 편하게 일하려고 하는 것 입니다.