TypeScript 네이티브 포팅 프로젝트 Corsa: 10배 이상 빠른 컴파일러 'tsgo' 프리뷰 공개
🤖 AI 추천
타입스크립트 컴파일러의 성능 향상에 관심 있는 프론트엔드 및 백엔드 개발자, 특히 대규모 프로젝트를 다루거나 빌드 속도 개선이 필요한 모든 개발자에게 유용합니다.
🔖 주요 키워드
핵심 기술: 타입스크립트 컴파일러를 Go 언어로 네이티브 포팅한 프로젝트 'Corsa'의 프리뷰 버전인 'tsgo'가 공개되어, 기존 tsc
대비 10배 이상의 속도 향상을 제공합니다.
기술적 세부사항:
* Go 기반 네이티브 포팅: tsgo
는 Go 언어로 작성되어 병렬성과 공유 메모리를 활용하여 대규모 프로젝트에서 뛰어난 성능을 발휘합니다.
* 10배 이상의 속도 향상: Sentry 프로젝트 예시에서 tsc
는 72초, tsgo
는 6.7초가 소요되어 실제 성능 개선을 입증했습니다.
* JSX 및 JSDoc 지원: 기존 tsc
에서 지원하던 기능 외에 JSX와 JSDoc 기반 JavaScript 파일에 대한 타입 검사도 지원합니다.
* VS Code 확장: VS Code용 "TypeScript (Native Preview)" 확장이 출시되었으며, 설정을 통해 tsgo
를 사용할 수 있습니다. (자동 완성, 참조 찾기 등 일부 기능은 개발 중)
* LSP 기반 언어 서버: 기존 TSServer 대신 Rust로 재작성 중인 LSP 기반 언어 서버가 개발 중이며, 오류 표시, 정의로 이동, hover, 자동 완성 등의 기능을 제공합니다.
* IPC 기반 API 레이어: 다양한 언어에서 타입스크립트 프로세스와 통신할 수 있는 IPC 기반 API 레이어가 구현 중이며, Node.js 동기 통신을 위해 Rust 기반 모듈 libsyncrpc
가 도입되었습니다.
* 배포 방식: 야간 빌드(Nightly)로 배포되며 자동 업데이트됩니다.
* 미지원 기능: --build
, --declaration
emit, 일부 에디터 기능(자동 완성, 참조 찾기 등)은 아직 개발 중이거나 미지원 상태입니다.
* 호환성 고려사항: --moduleResolution: node
설정은 bundler
또는 nodenext
로 변경이 권장되며, 일부 설정 차이로 기존 프로젝트에서 오류가 발생할 수 있습니다.
개발 임팩트: 타입스크립트 컴파일 속도 획기적인 개선으로 개발 생산성을 크게 향상시키고, 대규모 프로젝트의 빌드 시간을 단축하여 개발 워크플로우의 효율성을 증대시킬 것으로 기대됩니다. 장기적으로는 tsc
를 대체할 잠재력을 가지고 있습니다.
커뮤니티 반응: 3월에 이슈가 되었던 10배 빠른 타입스크립트 관련 후속 발표로, 커뮤니티의 큰 관심을 받고 있습니다.