프로그래머스 데브코스 웹 풀사이클 12주차 1일차

geun·2024년 1월 29일
0

데브코스

목록 보기
39/79
post-thumbnail

TypeScript

타입스크립트란?

타입스크립트 = 자바스크립트 + 타입체크
타입스크립트 환경에서 자바스크립트를 코딩하면 동작하지만,
자바스크립트 환경에서 타입스크립트를 코딩하면 동작하지 않는다.

타입스크립트가 필요한 이유

  • 자바스크립트 코드는 상대적으로 지저분하다.
  • 코드의 스케일이 커지면 자바스크립트는 코드 관리에 어려움이 있다

타입스크립트를 사용하면 좋은 점

  • 자바스크립트 기반보다 버그가 줄어든다.
  • 유지보수에 용이하다.
  • 코드의 퀄리티가 증가한다.
  • 디버깅에 용이하다.

데이터 타입을 표기하면 좋은 점

  • 객체 지향 프로그래밍의 특성 지원
  • 클래스, 인터페이스, 생성자, 접근 지정자 등 객체 지원 프로그래밍 특성 지원
  • 타입스크립트를 이해하면, 자바스크립트에 객체 지향 코드 적용 가능

데이터 타입과 추론

데이터 타입이 중요한 이유

  • 자바스크립트는 변수에 데이터 타입의 값을 할당할 수 없다.
  • 따라서 자바스크립트는, 변수가 의도치 않은 타입으로 변하는 것을 방지하기 어렵다.

타입 추론

  • 타입스크립트는 타입 추론 기능을 통해 변수의 타입을 자동으로 판단한다.
  • 타입스크립트는 컴파일러가 초기에 할당된 값을 바탕으로 변수 타입을 추론한다.
  • 타입 추론은 코드를 간결하게 해주나, 타입을 명시적으로 지정해 주는것이 더 명확하다.
  • 타입 추론이 모호한 경우나, 복잡한 로직에서는 타입을 명시해주는 것이 좋다.

데이터 타입의 종류

  • 타입스크립트에는 다양한 데이터 타입이 존재한다
  • 데이터 타입은 크게 기본 데이터 타입, 객체 타입, 특수 타입이 있다

기본 데이터 타입

  • number : 숫자 타입으로 정수, 실수를 포함
  • string : 문자열
  • boolean : 참/거짓을 나타낸다
  • null : 값이 없음을 나타낸다
  • undefined : 값이 할당되지 않는 변수의 기본값인 타입

객체 타입

  • object : 객체를 나타낸다
  • array : 동일한 탕비의 요소를 가진 배열
  • tuple : 각 요소가 다른 타입을 가질수 있는 배열

특수 타입

  • any : 어떠한 타입이든 할당될 수 있는 타입(타입을 지정하기에 모호할 때 임시로 사용)
  • unknown : 타입을 미리 알 수 없는 경우 사용하는 타입

인터페이스

  • 인터페이스는 사용자 정의 타입이다.
  • 선택적 프로퍼티로 지정하려면 속성값 뒤에 ?를 붙여준다.
  • 메소드도 인터페이스 내에서 선언 가능하다. (메소드 오버라이딩이 필요하다.)
  • 인터페이스를 클래스에 상속 가능하다.(implements 키워드 사용)

0개의 댓글