Deno 1.16 JavaScript ํ๋ซํผ์ JavaScript ๋ฐ TypeScript๋ก ์์ฑ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ ๋ฆฝ ์คํํ ์คํ(๋ธ๋ผ์ฐ์ ์ฌ์ฉ ์์ด)์ฉ์ผ๋ก ์ถ์๋์์ต๋๋ค. ์ด ํ๋ก์ ํธ๋ Node.js ์์ฑ์ Ryan Dahl์ด ๊ฐ๋ฐํ์ต๋๋ค. ํ๋ซํผ ์ฝ๋๋ Rust ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์์ฑ๋์์ผ๋ฉฐ MIT ๋ผ์ด์ ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค. Linux, Windows ๋ฐ macOS์ฉ์ผ๋ก ์ค๋น๋ ๋น๋๊ฐ ์ค๋น๋์ด ์์ต๋๋ค.
์ด ํ๋ก์ ํธ๋ Node.js ํ๋ซํผ๊ณผ ์ ์ฌํ๋ฉฐ V8 JavaScript ์์ง์ ์ฌ์ฉํ์ง๋ง Node.js ์์ฑ์์ ๋ฐ๋ฅด๋ฉด ์ด์ ํ๋ก์ ํธ์ ์ฌ๋ฌ ์ํคํ ์ฒ ๊ฒฐํจ์ ์์ ํ์ผ๋ฉฐ ๋ค์๊ณผ ๊ฐ์ ๋์์ค์์ ๋ค๋ฆ ๋๋ค. :
- ๊ฐ๋ฐ์์ ๋ฐ๋ฅด๋ฉด Rust๋ฅผ ๊ธฐ๋ณธ ์ธ์ด๋ก ์ฌ์ฉํ๋ฉด ๋ฎ์ ์์ค์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ(๋ฒํผ ์ค๋ฒํ๋ก, ํด์ ํ ์ฌ์ฉ ๋ฑ)์ ๊ด๋ จ๋ ์ทจ์ฝ์ ์ ์ํ์ด ์ค์ด๋ญ๋๋ค.
- Deno๋ npm ํจํค์ง ๊ด๋ฆฌ์์ package.json์ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ, ์ค์นํ ๋ชจ๋์ URL์ด๋ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ์ฌ ์ฌ์ฉ์์๊ฒ ๋ชจ๋์ ์ค์นํ๋ผ๋ ๋ฉ์์ง๋ฅผ ํ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด ํ๋ก์ ํธ๋ ํ์ฌ ๋ชจ๋๊ณผ์ ์์ ์ ๋จ์ํํ๊ธฐ ์ํ ์ฌ๋ฌ ์ ํธ๋ฆฌํฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋๋ฐ์ค์์ ๋ณ๋๋ก ์คํ๋๋ฉฐ ๋ช ์์ ์ผ๋ก ๋ถ์ฌ๋ ๊ถํ ์์ด๋ ๋คํธ์ํฌ, ํ๊ฒฝ ๋ณ์ ๋ฐ ํ์ผ ์์คํ ์ ์ก์ธ์คํ ์ ์์ต๋๋ค.
- ์ด ์ํคํ ์ฒ๋ Deno ์์คํ ๊ณผ ์ผ๋ฐ ๋ธ๋ผ์ฐ์ ๋ชจ๋์์ ์๋ํ ์ ์๋ ๋ฒ์ฉ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- "ES ๋ชจ๋"์ ์ฌ์ฉํ๊ณ require() ์ง์์ด ๋ถ์กฑํฉ๋๋ค.
- ํ๋ก๊ทธ๋๋จธ๊ฐ ์ฒ๋ฆฌํ์ง ์์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค๋ฅ๋ ๊ฐ์ ์ข ๋ฃ๋ก ์ด์ด์ง๋๋ค.
- JavaScript ์ธ์ TypeScript ์ง์;
- ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅํ ํ๋ซํผ์ ์ ์ฒด ํฌ๊ธฐ๋ ๋จ์ผ ์คํ ํ์ผ ํํ๋ก 84MB(zip ์์นด์ด๋ธ - 31MB)์ ๋๋ค.
- ์ด ํคํธ๋ ์ข ์์ฑ์ ํด๊ฒฐํ๊ณ ์ฝ๋ ํ์์ ์ง์ ํ๊ธฐ ์ํ ์์คํ ์ ์ ๊ณตํฉ๋๋ค.
- ๊ณ ์ฑ๋ฅ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์ ์ ๋ก๋๋ค.
Dino๋ ์ด๋ฒคํธ ์ค์ฌ ์ํคํ ์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ณ ์ฑ๋ฅ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋๋ก ์ค๊ณ๋ Tokio ํ๋ซํผ์ ์ฌ์ฉํ์ฌ ๋น์ฐจ๋จ ๋ฐฉ์์ผ๋ก ์์ฒญ์ ์ฒ๋ฆฌํฉ๋๋ค. Deno์ ๋ด์ฅ๋ HTTP ์๋ฒ๊ฐ ๊ธฐ๋ณธ TCP ์์ผ ์์ TypeScript๋ก ๊ตฌํ๋์ด ๋คํธ์ํฌ ์์ ์ฑ๋ฅ์ ๊ธ์ ์ ์ธ ์ํฅ์ ๋ฏธ์น๋ค๋ ์ ๋ ํฅ๋ฏธ๋กญ์ต๋๋ค.
์ ๋ฒ์ ์์๋ ๋ค์๊ณผ ๊ฐ์ด ์ค๋ช ํฉ๋๋ค.
- ์ฑ๋ฅ ์ต์ ํ(4๊ฐ ํจ์น);
- 15๊ฐ ์ด์์ ์ค๋ฅ๊ฐ ์์ ๋์์ต๋๋ค. ํนํ TLS ํด๋ผ์ด์ธํธ๋ ์ด์ HTTP/2๋ฅผ ์ง์ํ๊ณ ์ธ์ฝ๋ฉ ํ์ ์์คํ ์ ์ถ๊ฐ ์ธ์ฝ๋ฉ ํ์ ๋ฑ์ ์ง์ํฉ๋๋ค.
- 8๊ฐ ์ด์์ ํ์ ์ด ์ด๋ฃจ์ด์ก์ผ๋ฉฐ ๊ทธ ์ค ์ด์ ํ ์คํธ ํ์ ์์คํ ์ธ Deno.startTls ๋ฐ Deno.TestDefinition.permissions์ ์์ ํ, V9.7 JS ์์ง์ ๋ฒ์ 17๋ก ์ ๋ฐ์ดํธ, React XNUMX JSX ๋ณํ ์ง์ ๋ฑ์ด ์์ต๋๋ค.
์ถ์ฒ : opennet.ru