[typescript] 타입스크립트 기본 개념

소개

타입스크립트(TypeScript)는 Microsoft에서 개발한 오픈 소스 프로그래밍 언어로, JavaScript의 확장된 버전입니다. 타입스크립트는 정적 타입을 지원하여 개발자가 코드를 더 예측 가능하고 유지보수하기 쉽도록 도와줍니다.

이번 포스트에서는 타입스크립트의 기본 개념과 주요 기능에 대해 알아보겠습니다.

타입 선언

타입스크립트에서는 변수 선언 시 해당 변수의 타입을 명시할 수 있습니다. 이를 통해 컴파일러가 코드를 분석하고 타입을 검증하여 오류를 발견할 수 있습니다.

let name: string = "John";
let age: number = 30;
let isStudent: boolean = false;

인터페이스

인터페이스는 타입을 정의하는데 사용되며, 객체의 구조를 명확히 정의할 수 있습니다.

interface Person {
  name: string;
  age: number;
  isStudent: boolean;
}

let person: Person = {
  name: "John",
  age: 30,
  isStudent: false
};

클래스

타입스크립트는 객체지향 프로그래밍을 지원하며, 클래스를 활용하여 객체를 생성하고 관리할 수 있습니다.

class Student {
  name: string;
  age: number;

  constructor(name: string, age: number) {
    this.name = name;
    this.age = age;
  }

  displayInfo() {
    console.log(`Name: ${this.name}, Age: ${this.age}`);
  }
}

let student1 = new Student("John", 20);
student1.displayInfo();  // 출력: Name: John, Age: 20

제네릭

제네릭은 타입이 변하는 상황에서 코드를 재사용하기 위한 방법으로, 함수나 클래스를 작성할 때 타입 매개변수를 사용할 수 있습니다.

function identity<T>(arg: T): T {
  return arg;
}

let output = identity<string>("hello");

컴파일

타입스크립트는 JavaScript로 변환되어 웹 애플리케이션을 구동하기 때문에, 타입스크립트 컴파일러(tsc)를 사용하여 타입스크립트 코드를 JavaScript 코드로 변환해야 합니다.

tsc filename.ts

결론

타입스크립트는 정적 타입을 지원하여 코드의 안정성을 높이고 오류를 줄일 수 있습니다. 또한 객체지향 프로그래밍과 모듈화 등 다양한 기능을 제공하여 프로젝트의 유지보수성을 향상시킵니다.

위 내용은 타입스크립트의 기본 개념에 대한 간략한 소개이며, 각 주제에 대해 더 자세히 알고 싶다면 공식 타입스크립트 문서를 참고하시기 바랍니다.