javascript에서 객체 지향 프로그래밍 기능을 강화한 언어
Javscript는 대부분 express와 같이 client의 url 요청(request)와 이에 대한 res으로 이루어진 하나의 promise logic으로 이루어져 있다.
이러한 promise logic의 특징을 가지는 Javscript를, class 기반의 객체 지향 프로그래밍 언어 기능을 제공해주도록 고안된 언어가 바로 typescript이다.
Javascript
typescript
package.json
{
"name": "typescript_blockchain",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node index.js",
"prestart": "tsc"
},
"author": "",
"license": "ISC",
"dependencies": {
"typescript": "^4.4.3"
}
}
npm start -> index.js를 실행한다.
prestart -> index.js를 실행하기 전에, tsc를 먼저 컴파일하여 실행가능한 환경이 되도록 구성한다.
tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"target": "ES2015",
"sourceMap": true
},
"include": ["index.ts"],
"exclude": ["node_modules"]
}
tsc 입력 시 컴파일할 대상의 javascript 파일을 구성한다.
그 이외 compilerOptions를 통해 컴파일 과정에서의 옵션을 구성해준다.
typescript vs javscript
https://velog.io/@pluviabc1/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%99%80-%ED%83%80%EC%9E%85%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EC%B0%A8%EC%9D%B4%EC%A0%90