1. 타입스크립트란?
쉽게 말해 타입스크립트는 자바스크립트에 타입을 부여한 언어이다.
2. 타입스크립트를 써야 하는 이유?
그렇다면 왜 굳이 자바스크립트를 두고 타입스크립트를 써야할까?
제일 중요한 것만 말하면 자바스크립트는 동적타입 언어이기 때문에
정적타입을 지원하는 타입스크립트를 사용해야한다.
동적타입언어란 ?
런타임시 변수의 타입이 결정되는 언어이다.
따라서 동적타입 언어는 코드를 실행할 때 "알아서" 변수 타입을 판단해준다.
실행시에 작성자가 직접 결정하여 작성하기 때문에 특정 변수를 선언했을 때 다른 타입으로도 대입할 수 있다.
예를들어 숫자로 선언한 값에 문자열, 배열, 객체 타입의 값을 대입해도 문제가 발생하지 않는다.
그렇다면 정적타입 언어란?
컴파일시 변수의 타입이 결정되는 언어이다. 이들 언어는 변수에 들어갈 값의 형태에 따라 자료형을 지정해주어야 한다. 컴파일 시에 자료형에 맞지 않은 값이 들어있으면 컴파일 에러가 발생한다.
//정적타입언어 코틀린 fun sum (x:Int, y:Int) :Int{ return x+y }
이렇게 x, y 그리고 x + y 를 받는 것도 다 정수형임을 지정해주어야 한다.
동적타입언어는 코드를 실행하는 단계에서 타입이 결정이 되므로, 코드를 실행해봐야만 코드가 타입 문제가 없이 잘 실행되었구나를 알 수 있다. 하지만 정적타입언어는 컴파일 시에 타입이 결정되기 때문에 코드를 실행하지 않아도 변수에 잘못된 타입이 들어가는 상황에 문제를 감지할 수 있다.
따라서 정적타입은 유지보수가 간편하고 오류를 발견하기도 쉽다.
따라서 우리는 자바스크립트가 동적타입 언어로서 가지는 문제점을 해결하기 위해서 타입스크립트를 사용하고자 한다.
=> 타입스크립트를 사용하면 tsc (typescript compiler) 를 통해 자바스크립트 코드로 변환이 되고 자바스크립트에서 정적타입을 사용할 수 있다는 장점이 있다.
3. 타입스크립트 동작원리
타입스크립트는 컴파일 시 타입 검사를 하여 자바스크립트고 변환이 된다.
만약 이때 타입검사를 통과하지 못하면 자바스크립트 코드로 변환되지 않아 실행이 불가능하게 된다.
타입스크립트 프로젝트를 실행하면 tsconfig.json 파일이 생기는데 이 tsconfig.josn 파일에서 컴파일러 설정을 할 수 있다.
tsconfig.json 파일에서 typescript 코드를 JS루 변환할 때 어떻게 처리할지 정의하게 된다.
'TypeScript' 카테고리의 다른 글
[RN] 타입스크립트 개념 정리 (6) - 제네릭(Generic) 이란? (1) | 2024.08.24 |
---|---|
[RN] 타입스크립트 개념 정리 (5) - 클래스 의 this 와 new (0) | 2024.08.24 |
[RN] 타입스크립트 개념 정리 (4) - 클래스(Class) 란? (0) | 2024.08.24 |
[RN] 타입스크립트 개념 정리 (3) - 인터페이스란? (0) | 2024.08.24 |
[RN] 타입스크립트 개념 정리 (2) - 타입의 종류 (0) | 2024.08.24 |