00. ๐ฆ ์์ํ๊ธฐ ์ ์
๐ The TypeScript Handbook (typescript ๊ณต์๋ฌธ์)
https://www.typescriptlang.org/โ
๐ typescript ํ๋ ์ด๊ทธ๋ผ์ด๋
https://www.typescriptlang.org/playโ
๐ typescript ํธ๋๋ถ ํ๋
https://www.typescriptlang.org/ko/docs/handbook/intro.htmlโ
๐ typescript ๋ฒ์ ์์ ๋ด์ญ
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-8.htmlโ
๐ Auto-Open Markdown Preview
Visual studio code ์ extension (Auto-Open Markdown Preview)์ ์ค์น ํ ์งํ ํ๋๊ฒ์ ์ถ์ฒํฉ๋๋ค.
node ์ค์น (ํ์)
- npm init -y : ํ๋ก์ ํธ ์ค์
- npm install typescript : ํ์ ์คํธ๋ฆฝํธ ์ค์น
- npx tsc โinit : ํ์ ์คํฌ๋ฆฝํธ ์ด๊ธฐํ
ํ์ ์คํฌ๋ฆฝํธ๋ ํ์ ์คํฌ๋ฆฝํธ๋ฅผ -> ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ณํ์์ผ ๋์์ ํ๊ฒ๋๋๋ฐ, ๊ทธ๊ฒ์ ์ฒ๋ฆฌํ๋ node ๋ชจ๋ ์ ๋๋ค.
๋ฐ๋ก ์คํํ ์ ์๋ Deno๋ ์กด์ฌ, MS์์ ์ ๊ท ์ปดํ์ผ๋ฌ ์ ์์ค
js๋ก ๋ณ๊ฒฝ์ ํด์ ๋์ํ๊ธฐ ๋๋ฌธ์, ๋ฒ์ ๋ง ๋ช ์ํ๋ฉด, ๋์ํ ์ฌ์ง๊ฐ ํฝ๋๋ค.
๐ tsconfig.json (tsc โinit ์์ฑ)
- โallowJsโ: true // JS ํจ๊ป ํ์ฉ
- โstrictโ : true // ํ๋น์ ๋ ์๊ฒฉํ๊ฒ ์ฒดํฌํฉ๋๋ค.
- โsourceMapโ : true // ๋๋ฒ๊น ์, js, tsํ์ผ์ ๋งตํํ๋ ์ญํ์ ์ํํฉ๋๋ค.
- โtargetโ : โes2016โ ์ฐ์ถ๋ฌผ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋ช ์ํฉ๋๋ค. ์ฌ์ฉ ๋ฒ์ ์ ํน์ ํ์ฌ ๊ณผ๊ฑฐ ์ต์คํ๋ก๋ฌ๊น์ง ์ปค๋ฒ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
- โmoduleโ : ์ต์ ๋ชจ๋์ ์ฐ๊ณ ์ถ์ผ๋ฉด ES2015, ๊ทธ๋ฅ ๋๋๋ ค๋ฉด โcommonjsโ์ฌ์ฉํด๋ ๋ฌด๋ฐฉํฉ๋๋ค.
- โforceConsistentCasingInFileNamesโ : ์๋์ฐ์์๋ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถ์ ์ ์ํ์ง๋ง, ๋ฆฌ๋ ์ค์์๋ ์๋ฌ๊ฐ ๋ง์ด ๋ ์ ์์ต๋๋ค. ๋์๋ฌธ์ ์ง์ผ์ ์ํฌํธ ํ ์ ์๋๋ก ํ๋ ๊ตฌ๋ฌธ
- โskipLikCheckโ : .d.ts ๋ฐ์ดํฐ ํ์ ์ ๋ชจ์๋ ํ์ผ๋ก, ํ์ ์ฒดํฌ๋ฅผ ์ฌ์ฉํ ๋๋ง ํ์ ์ ์ฒดํฌํ๋๋ก ํฉ๋๋ค.
๐ ๊ธฐ๋ณธ ์ง์
- ๋ฉ์ธ ๋ฃฐ: typescript๋ ์ต์ข ์ ์ผ๋ก javascript๋ก ๋ณํํฉ๋๋ค.
- ์์ ํ typescript ์ฝ๋๋ฅผ ๋๋ฆด ์ ์๋ ๊ฒ์ deno์ด๋ ๋์คํ๋์ง๊ฐ ์์์. ๋ธ๋ผ์ฐ์ , ๋ ธ๋๋ ๋ชจ๋ js ํ์ผ์ ์คํํฉ๋๋ค.
- typescript๋ ์ธ์ด์ด์ ์ปดํ์ผ๋ฌ(tsc)์ด๋ค. ์ปดํ์ผ๋ฌ๋ ts ์ฝ๋๋ฅผ js๋ก ๋ฐ๊ฟ์ค๋ค.
- tsc๋ tsconfig.json(tsc โinit ์ ์์ฑ)์ ๋ฐ๋ผ ts ์ฝ๋๋ฅผ js(tsc ์ ์์ฑ)๋ก ๋ฐ๊ฟ์ค๋ค. ์ธํ์ธ ts์ ์์ํ์ธ js ๋ชจ๋์ ์ํฅ์ ๋ผ์น๋ฏ๋ก tsconfig.json ์ค์ ์ ๋ฐ๋์ ๋ด์ผํ๋ค.
- ๋จ์ํ ํ์ ๊ฒ์ฌ๋ง ํ๊ณ ์ถ๋ค๋ฉด tsc โnoEmit ํ๋ฉด ๋๋ค.
- ๊ฐ์ธ ์๊ฒฌ: tsconfig.json์์ ๊ทธ๋ฅ esModuleInterop: true, strict: true ๋ ๊ฐ๋ง ์ฃผ๋ก ์ผ๋๋ ํธ. strict: true๊ฐ ํต์ฌ์ ๋๋ค ๋๋ฒ๊น ์ ์ํด์๋ sourceMap: true
- ts ํ์ผ์ ์คํํ๋ ๊ฒ ์๋๋ผ ๊ฒฐ๊ณผ๋ฌผ์ธ js๋ฅผ ์คํํด์ผ ํ๋ค.
Last updated on