타입스크립트 7.0, Go 기반 네이티브 포트로 10배 빨라진 빌드 속도!
타입스크립트 7.0(TypeScript 7.0), Go 언어로 재작성된 네이티브 컴파일러(Native Compiler) 출시
빌드 속도 8~12배 향상 및 메모리 사용량 감소 달성
VS Code 등 편집기에서의 LSP 지원 강화로 개발 경험 개선
기존 타입스크립트 코드와의 호환성 유지하며 성능 최적화
네이티브 포트(Native Port) 전환의 의미
커뮤니티에서는 기존 자가 호스팅(Self-hosted) 컴파일러에서 Go 기반 네이티브 컴파일러로 전환한 결정에 주목하고 있습니다. 이는 언어 설계가 컴파일러 작성에 최적화되어야 한다는 압박에서 벗어나, 각 언어의 강점을 활용하는 방향으로 나아가는 현명한 선택이라는 평가가 나옵니다. 언어 설계자(Language Designers)가 모든 사용 사례에 완벽한 언어를 만들 수 없다는 점을 인정한 결과로 해석됩니다.
성능 향상과 실제 개발 워크플로우
타입스크립트 7.0은 빌드 시간 단축(Build Time Reduction)뿐만 아니라, 편집기 내 실시간 피드백(Real-time Editor Feedback) 속도를 획기적으로 개선했습니다. 예를 들어, VS Code에서 오류 발생 시 이전 17.5초에서 1.3초로 13배 이상 빨라진 진단 시간(Diagnostic Time)을 보여줍니다. 이는 개발자 생산성(Developer Productivity) 향상에 직접적으로 기여하며, 코드베이스 규모가 큰 프로젝트에서 특히 유용할 것으로 보입니다.
VS Code 성능 및 LSP 통합
VS Code와 같은 편집기에서 타입스크립트 7.0의 성능 향상은 언어 서버 프로토콜(Language Server Protocol, LSP) 지원 강화 덕분입니다. VS Code 자체는 타입스크립트로 작성되었지만, 타입스크립트 컴파일러의 속도 향상이 VS Code 실행 속도에 직접적인 영향을 주는 것은 아닙니다. 다만, 타입스크립트 언어 확장(TypeScript Language Extensions) 및 LSP 서버의 성능 개선은 런타임 시 코드 분석 속도를 높여 개발 경험을 향상시킵니다.
병렬 처리 제어 및 최적화 옵션
새로운 컴파일러는 병렬 처리(Parallelization)를 통해 파싱, 타입 검사, 코드 생성 등 다양한 단계를 동시에 수행합니다. 특히 `--checkers` 및 `--builders` 플래그를 통해 타입 검사기(Type-checker)와 빌더(Builder)의 병렬 작업 수를 조절할 수 있습니다. 이는 CPU 코어 수에 맞춰 성능을 최적화하거나, 리소스가 제한된 환경에서 `--singleThreaded` 옵션으로 단일 스레드 모드를 사용할 수 있게 하여 유연성을 제공합니다.
기존 생태계 호환성 및 마이그레이션
타입스크립트 7.0은 기존 타입스크립트 6.0(TypeScript 6.0)과의 호환성을 유지하며, `@typescript/typescript6` 패키지를 통해 병렬 설치 및 사용이 가능합니다. 다만, Vue, MDX, Astro 등 임베디드 언어(Embedded Languages)를 사용하는 워크플로우는 아직 안정적인 API 부재로 인해 타입스크립트 6.0을 계속 사용해야 할 수 있습니다. 이는 향후 API 안정화를 통해 해결될 것으로 기대됩니다.