TypeScript 6.0 Beta 출시! 7.0으로의 전환, 무엇이 달라질까?

by DD
3개월 전
조회수 34

TypeScript 6.0 Beta 버전 출시, 7.0 버전으로의 전환을 위한 과도기적 릴리스

Go 언어로 재작성된 컴파일러를 기반으로 하는 7.0 버전은 성능 향상에 초점

모듈 시스템(Module System) 및 컴파일러 옵션(Compiler Options)의 대대적인 변경

개발자들은 성능 개선(Performance Improvement)에 대한 기대와 함께, 마이그레이션(Migration)에 대한 우려 표명

TypeScript 7.0: Go 기반 네이티브 컴파일러 도입

TypeScript 6.0은 7.0으로의 전환을 위한 중요한 단계로, Go 언어(Go Language)로 작성된 새로운 컴파일러를 기반으로 한다. 이는 네이티브 코드의 속도와 공유 메모리 멀티스레딩(Shared-memory multi-threading)을 활용하여 컴파일 속도(Compile Speed)를 대폭 향상시킬 것으로 예상된다. 댓글에서는 7.0 버전에 대한 기대감을 드러내며, 특히 성능 개선에 대한 높은 관심을 보였다.

모듈 시스템 및 컴파일러 옵션의 변화

TypeScript 6.0에서는 ESM(ECMAScript Modules)을 중심으로 모듈 시스템 지원이 강화되고, 기존의 `amd`, `umd`, `systemjs` 등의 옵션은 더 이상 지원되지 않는다. 또한, `baseUrl` 옵션이 deprecated 되면서, 개발자들은 path mapping 설정을 변경해야 한다. 이러한 변화는 현대적인 개발 환경에 맞춰 TypeScript의 설정을 단순화하고, 빌드 성능(Build Performance)을 개선하기 위한 것이다.

--stableTypeOrdering 플래그와 타입 정렬

TypeScript 7.0에서는 병렬 타입 검사(Parallel Type Checking)를 통해 전체 검사 시간을 단축할 예정이다. 이를 위해, 6.0 버전에서는 `--stableTypeOrdering` 플래그를 도입하여 7.0 버전과 동일한 타입 정렬 방식을 적용할 수 있도록 했다. 이 플래그는 타입 검사 순서에 따른 선언 파일(Declaration File)의 변화를 줄여, 6.0과 7.0 간의 마이그레이션 과정에서 발생할 수 있는 혼란을 줄이는 데 기여할 것으로 보인다.

Temporal API 및 DOM 관련 개선

TypeScript 6.0은 Temporal API에 대한 내장 타입을 제공하여, 개발자들이 최신 JavaScript 기능을 미리 사용할 수 있도록 지원한다. 또한, `lib.dom.iterable.d.ts`와 `lib.dom.asynciterable.d.ts`의 내용을 `lib.dom.d.ts`에 통합하여, DOM 관련 설정을 간소화했다. 이러한 개선은 개발자 경험을 향상시키고, 최신 웹 표준(Web Standards)에 대한 지원을 강화하기 위한 노력의 일환이다.

Announcing TypeScript 6.0 Beta