Home Typescript
Post
X

Typescript

Typescript

Typescript는 Javascript의 상위 집합으로 JavaScript의 모든 기능을 포함하면서 추가적인 기능을 제공합니다.

Javascript 엔진을 사용하며 변수의 타입을 정의하고 프로그래밍을 하면 Javascript로 컴파일되어 실행할 수 있습니다.

이 때, 컴파일은 브라우저에서 실행하기위해 Typescript 컴파일러(TSC)를 사용하여 Typescript로 작성된 코드를 Javascript 코드로 변환해주는 과정을 말합니다.


주요 특징

  • 정적 타입 시스템

    변수, 함수, 객체 등에 타입을 명시적으로 정의할 수 있습니다.

    컴파일 단계에서 타입 오류를 확인하여 런타임 오류를 줄일 수 있습니다.

    1
    2
    
    let name: string = "Alice";
    let age: number = 25;
    
  • 최신 JavaScript 기능 지원

    ES6+ 이상의 JavaScript 문법을 사용할 수 있습니다.

    TypeScript는 JavaScript로 트랜스파일(transpile)되므로 브라우저 호환성이 보장됩니다.

  • 객체 지향 프로그래밍(OOP) 지원

    클래스, 인터페이스, 상속 등을 활용한 객체 지향 설계를 쉽게 구현할 수 있습니다.

    1
    2
    3
    4
    5
    6
    7
    
    class Person {
      constructor(private name: string, private age: number) {}
    
      greet() {
        console.log(`Hello, my name is ${this.name}.`);
      }
    }
    
  • JavaScript 호환성

    기존 JavaScript 코드를 그대로 TypeScript에서 사용할 수 있습니다.

    점진적으로 타입을 추가하여 마이그레이션이 가능합니다.

  • 도구 지원 강화

    타입 정의 덕분에 코드 자동 완성, 리팩토링, 디버깅이 편리해집니다.

    많은 IDE와 통합되어 생산성을 높여줍니다.

  • 타입 정의 파일(.d.ts)

    외부 라이브러리(JavaScript 기반)에서도 타입을 사용할 수 있도록 타입 정의 파일을 제공합니다.

    @types 패키지를 통해 인기 라이브러리들의 타입을 설치할 수 있습니다.


장점

  • 안정성 : 정적 타입 기반으로 컴파일 과정에서 에러 발견
  • 생산성 : IDE의 자동완성 및 타입 체킹 기능
  • 가독성 : 타입 선언으로 문서화 역할

단점

  • 초기 학습 난이도 : 타입 시스템 학습
  • 빌드 시간 : 컴파일 과정 필요
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.