• 타입스크립트 기본 개념에 대해서 학습을 했고, 이제는 직관적으로 타입스크립트는 이런 것이다라고 알 수 있는 클래스와 인터페이스, 제너릭 등에 대해 공부함 (사실 기본서 2장에 포함된 내용이지만 두 번으로 나누어 학습)

    • 클래스 Class
      객체 만드는 공장으로 생각하고 있었음. (자바스크립트)
      필드와 메서드의 컨테이너이고 인스턴스를 만들고 재사용할 수 있다.

      • 타입스크립트 클래스는 자바스크립트에서 지원되지 않는 캡슐화 기능을 추가로 제공한다.

      • 접근 제어자 (private, readonly, protected 등)

      • 게터와 세터 (계산된 속성)

      • 정적 속성(static)
        (특정 상황에 따라 클래스 인스턴스들 사이에 데이터를 공유해야 할 수 있기 때문에 정적 멤버를 사용한다.)


    • 인터페이스 Interface
      규칙의 집합
      타입에 대한 합의된 규칙을 설정하는 방식

      • 추상화 => 내부 구현을 노출하지 않음으로 코드의 복잡도와 강한 결합을 줄이는 데 있다.
        타입의 내부 동작을 보여주지 않고 인터페이스를 사용해 시그니처만 보여주는 것이다.
        interface 이름 {
        	예시1: 타입;
         	예시2: 타입;
        	함수: () => string
        }

    • 상속
      객체지향 프로그래밍에서 상속은 코드를 재사용하기 위한 방법

      • 추상 클래스
        abstract class 이름 {
        	constructor() {}
        	abstract 함수(매개변수: 타입): 타입;
        }

    • 제네릭
      작성한 사람에 의해 타입이 정해지는 것이 아니라 해당 제네릭 타입을 사용하는 사람이 선택한 타입으로 타입을 정의할 수 있다.

      제네릭에 대해서는 좀 더 공부를 해야할 것 같다. (강의로 보충할 예정)

profile
프론트엔드 개발자가 되기 위해 공부 중입니다.

0개의 댓글