Angular

Angular - 타입스크립트의 장점

인어공쭈 2023. 3. 20. 14:52

TypeScript 이란?

- 2012년 마이크로소프트가 발표한 타입스크립트(TypeScript)는 자바스크립트(JavaScript)를 기반으로 정적 타입 문법을 추가한 프로그래밍 언어

 

특징

- 컴파일 언어, 정적 타입 언어 :  코드 작성 단계에서 타입을 체크해 오류를 확인할 수 있고 미리 타입을 결정하기 때문에 실행 속도가 매우 빠르다는 장점이 있다. 하지만 코드량이 증가하며 컴파일 시간이 오래 걸린다는 단점도 존재.

- 자바스크립트 슈퍼셋(Superset) : 자바스크립트 기본 문법에 타입스크립트의 문법을 추가한 언어, 자바스크립트로 작성한 코드는 확장자를 .js에서 .ts로 변경하고 타입스크립트로 컴파일해 변환할 수 있다.

- 객체 지향 프로그래밍 지원 : 타입스크립트는 ES6(ECMAScript 6)에서 새롭게 사용된 문법을 포함하고 있으며 클래스, 인터페이스, 상속, 모듈 등과 같은 객체 지향 프로그래밍 패턴을 제공한다.

 

 

장점

- 높은 수준의 코드 탐색과 디버깅 :  코드에 목적을 명시하고 목적에 맞지 않는 타입의 변수나 함수들에서 에러를 발생시켜 버그를 사전에 제거한다. 작업과 동시에 디버깅이 가능해 생산성을 높일 수 있다.

- 점진적 전환 가능 :  기존의 자바스크립트 프로젝트를 타입스크립트로 전환하는데 부담이 있다면 추가 기능이나 특정 기능에만 타입스크립트를 도입함으로써 프로젝트를 점진적으로 전환할 수 있다.

 

문법

- 기본 타입 :  Boolean, Number, String, Object, Array, Tuple, Enum, Any, Void, Null, Undefined 

//변수에 타입 설정
let str: string = 'hi';
let num: number = 100;

let arr: Array = [1, 2, 3];
let arr2: number[] = [1, 2, 3];

//변수에 타입 설정
function add(a: number, b: number): number {
return a+b;
}

//인터페이스 설정
var person: User = {
 age: 30,
 name: 'aa'
}

function getUser(user: User) {
 console.log(user);
}

 

자세한 사항은 아래 참조

https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html

반응형

'Angular' 카테고리의 다른 글

Angular 유닛 테스트: Jasmine vs Jest 비교  (0) 2023.05.23
Angular - RxJS 란?  (0) 2023.03.29
Angular 란?  (0) 2023.03.14
Angular - NgRx란?  (0) 2023.03.08
Angular - ngrx in State (3) router-store&Entity& component-store  (0) 2023.03.08