JavaScript
- 웹 단위 개발이 힘들다
- 고정 타입을 가지고 있지 않다
var name ="join"
var age=20
- 클래스, 인터페이스, 모듈과 같은 구조 매커니즘이 없다
- 런타임 환경에서 에러가 발생한다
- .js 확장자
TypeScript
- Microsoft에서 개발하고 유지/관리하는 오픈 소스 언어
- 캡슐화되어있는 코드이다
- 유지가능한 코드이다
- 강한 타입 언어이다
- 컴파일 과정에서 에러를 확인할 수 있다
- .ts 확장자
- 자바스크립트로 컴파일된다( 컴파일 후, .ts -> .js)
Java/C/C# 언어는 강한 타입의 언어로 높은 가독성과 품질을 제공한다.
또한 컴파일 환경에서 에러를 관리할 수 있다.
하지만 JavaScript 약한 타입 언어로, String, int, 등의 자료형을 따로 구분하지 않고 변수를 설정할 수 있다.
이는 유연한 개발 환경을 제공하지만 런타임 환경에서 에러를 확인할 수 있다는 단점이 있다.
즉, 에러가 발생했을때, Java/C/C# 의 경우에는 컴파일 과정에서 에러가 발생하여 실행이 안되고,
이클립스 콘솔창에서 에러를 확인할 수 있다.
하지만 JavaScript의 경우에는 에러가 발생해도 실행이 되고 그 에러를 확인하기 위해서는
브라우저의 콘솔창으로 확인해야 된다.
TypeScript는 JavaScript에 타입 시스템을 적용한 언어로, 에러를 컴파일 환경에서 확인할 수 있다.
* 컴파일: 기계언어로 변환하는 과정
'TypeScript' 카테고리의 다른 글
| [TypeScript]Node.js 개념 (0) | 2021.04.23 |
|---|---|
| [TypeScript]map/reduce/forEachg함수, rest 매개변수, spread 연산자, 디스트럭쳐링(destructuring), class, export, import (0) | 2021.04.20 |
| [TypeScript]let, const, 템플릿 리터럴, arrow function, 비교연산자(===), indexOf함수, filter함수 (0) | 2021.04.20 |
| [TypeScript]vscode 로 TypeScript 파일 실행하기 (0) | 2021.04.16 |
| [TypeScript]타입스크립트 특징, TS Playground (0) | 2021.04.16 |