반응형
TypeScript는 JavaScript의 한계를 보완하기 위해 만들어진 언어입니다. 정적 타입을 지원하고 대형 프로젝트에서의 생산성과 유지보수성을 높이기 위해 등장했어요. 아래에 역사와 주요 버전을 시간 순으로 정리해드릴게요.
TypeScript의 역사
1. 등장 배경
- JavaScript는 유연하지만 구조적 대형 프로젝트엔 불리
- 마이크로소프트(Microsoft)는 내부적으로 AngularJS 기반의 대형 앱을 개발하면서 어려움을 겪음
- 이에 따라 "정적 타입을 가진 JavaScript 슈퍼셋"을 만들기로 결정
2. 역사 타임라인
● 2012년 10월 - TypeScript 0.8 (첫 공개 베타)
- 마이크로소프트가 TypeScript를 최초 발표
- Anders Hejlsberg (C#의 아키텍트)가 주도
- 정적 타입, 인터페이스, 클래스 등 제공
● 2013년 6월 - TypeScript 0.9
- 제너릭(Generics) 도입
- 타입 시스템 대폭 개선
● 2014년 2월 - TypeScript 1.0 (정식 출시)
- Visual Studio 2013에 통합
- Microsoft와 OSS 커뮤니티의 협업 시작
● 2015년 7월 - TypeScript 1.5
- ES6 지원 강화 (import/export, 클래스 등)
● 2016년 2월 - TypeScript 1.8
- JSX 지원 (React 개발자가 사용 가능)
● 2016년 9월 - TypeScript 2.0 (대규모 발전)
- Non-nullable types
- Control flow 기반 타입 추론
- Readonly, this 타입 등 추가
- Angular 2 정식 릴리스와 함께 TypeScript 채택
이 시점부터 대형 프레임워크(Angular, Vue, React 등)에서 적극 채택됨
● 2018년 7월 - TypeScript 3.0
- Tuple 타입 개선
- Rest 파라미터 타입
- 프로젝트 참조(Project References)
● 2020년 8월 - TypeScript 4.0 (중요한 마일스톤)
- Variadic Tuple Types
- Labeled Tuple Elements
- Class Property Inference from Constructors
- Editor 성능 향상
버전 4.x부터는 매달 정기 업데이트 진행
3. 주요 버전 요약 (4.x~)
버전 | 날짜 | 주요 기능 |
4.1 | 2020.11 | Template Literal Types |
4.2 | 2021.02 | Smarter type alias expansion |
4.3 | 2021.05 | Override keyword |
4.4 | 2021.08 | Control flow analysis improvements |
4.5 | 2021.11 | ECMAScript module support in Node.js |
4.6 | 2022.02 | More precise types for getters |
4.7 | 2022.05 | Improved module resolution for Node |
4.8 | 2022.08 | File watching 개선 |
4.9 | 2022.11 | satisfies 연산자 도입 |
5.0 | 2023.03 | 디코레이터 정식 도입, 모듈 시스템 강화 |
5.1 ~ 5.4 | 2023~2024 | 성능 개선, 타입 간소화, 제너릭 유연성 증가 |
4. 최신 버전
- TypeScript 5.4 (2024년 2월 출시)
- 단순화된 타입 체킹
noPropertyAccessFromIndexSignature
기본 활성화- 성능 및 편의성 개선
5. 요약
- TypeScript는 JavaScript의 확장판(슈퍼셋)
- 정적 타입 + ESNext 지원 + 대형 프로젝트 최적화
- 버전이 올라갈수록 타입 시스템이 정교해지고, ECMAScript 트렌드를 빠르게 반영
- 현재는 Angular, React, Vue 등 거의 모든 프론트엔드 프레임워크에서 핵심 도구
반응형
'언어 > TypeScript' 카테고리의 다른 글
[ TypeScript ] TypeScript 시작하기 (0) | 2025.04.16 |
---|