타입스크립트(TypeScript)의 버전 4.3이 베타 릴리즈로 공개됐다. 이번 업데이트에서는 오버라이드 키워드 추가, 템플릿 문자열 유형 개선 등을 지원한다. 타입스크립트는 자바스크립트(JavaScript)에 타입(types)을 도입한 마이크로소프트의 인기 있는 오픈소스 프로그래밍 언어다.
회사에 따르면 타입스크립트 4.3에서는 속성에 대한 읽기 및 쓰기 유형을 지정할 수 있다. 이 개선사항은 타입스크립트에서 값을 변환하는 API를 모델링할 때 ‘정확’과 ‘허용’ 중에 하나를 선택해야 했던 문제를 해결한다. ‘정확’을 선택하면 읽기 값은 더 쉽게 만들 수 있지만 쓰기가 어려워지고, ‘허용’을 선택하면 쓰기 값을 더 쉽게 만들 수 있지만 읽기가 어려워졌기 때문이다.
타입스크립트 4.3 베타 릴리즈는 지난 4월 1일 출시됐다. 릴리즈 캔디데이트는 오는 5월 11일에, 정식 버전은 5월 25일에 공개될 예정이다.
이 밖에 타입스크립트 4.3에서 계획된 다른 개선사항 및 기능은 다음과 같다.
• override 키워드가 추가됐다. 자바스크립트에서 클래스를 확장할 때 이 언어는 메소드를 쉽게 오버라이드할 수 있지만 몇 가지 실수(예: 이름 변경 누락 등)가 발생할 수 있다. 이제 메소드가 override 키워드로 표시되면 타입스크립트에서는 동일한 이름의 메소드가 기본 클래스에 있는지 항시 확인한다. 또 noImplicitOverride 플래그를 사용하면 명시적으로 override 키워드를 사용하지 않는 한 슈퍼클래스의 메소드를 오버라이드하는 것을 오류로 만든다.
• 서로 다른 템플릿 문자열 유형 간 추론 향상을 비롯해 템플릿 문자열 유형이 개선됐다. 이제 타입스크립트에서 템플릿 문자열의 각 부분이 성공적으로 일치하는지 증명하는 작업을 수행할 수 있다.
• 더 많은 클래스 요소를 #private#names으로 지정하여 런타임에서 비공개로 만들 수 있다. 이제 속성 외에도 메소드 및 접근자에 개인 이름을 지정할 수 있다.
• strictNullChecks에서 조건부로 Promise가 ‘참(truthy)’인지 확인하면 오류가 발생한다.
• 인덱스 서명을 사용하면 유형이 명시적으로 선언하는 것보다 더 많은 속성을 값에 설정할 수 있다. 지금까지 인덱스 서명은 클래스의 인스턴스 측에서만 선언할 수 있었다.
• 경로가 없는 import 구문을 작성하게 되면 가능한 가져오기 목록이 제공된다. 또 전체 완료를 커밋하면 작성하려는 경로를 포함해 전체 가져오기 구문이 완료된다.
• 이제 타입스크립트에서 @Link 태그를 인식할 수 있으며 태그가 연결된 선언을 다룰 수 있다.
타입스크립트 4.3 베타 릴리즈는 누겟(NuGet)에서 다운로드 받거나 또는 NPM을 통해 아래의 명령을 사용하여 설치할 수 있다(npm install typescript@beta). 한편 튜플 유형 및 유형 별칭과 관련된 개선사항을 특징으로 하는 타입스크립트 4.2는 지난 2월 23일 프로덕션 릴리즈로 공개됐다. ciokr@idg.co.kr