2024๋…„ 1์›” 26์ผยท1๋ถ„ ์ฝ๊ธฐ

Deno 1.40, ๋‚ ์งœ-์‹œ๊ฐ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ˜์‹ ํ•˜๋Š” ์ž„์‹œ API ๊ณต๊ฐœ

Deno 1.40 ๋ฆด๋ฆฌ์Šค์—๋Š” ์—…๋ฐ์ดํŠธ๋œ ECMAScript ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ๊ณ ๊ธ‰ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ Temporal API๊ฐ€ ๋„์ž…๋˜์–ด ํ™•์žฅ์„ฑ๊ณผ ์ฝ”๋“œ ๋‹จ์ˆœ์„ฑ์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Deno 1.40, ๋‚ ์งœ-์‹œ๊ฐ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ˜์‹ ํ•˜๋Š” ์ž„์‹œ API ๊ณต๊ฐœ

Deno 1.40์ด ์ถœ์‹œ๋˜๋ฉด์„œ JavaScript ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์ด ํฌ๊ฒŒ ์—…๋ฐ์ดํŠธ๋˜์–ด Node.js ์ „ํ†ต์ ์œผ๋กœ ๋ณด์œ ํ–ˆ๋˜ ๋„๋ฉ”์ธ์— ๋„์ „ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 1์›” 25์ผ์— ๊ณต๊ฐœ๋œ ์ตœ์‹  ๋ฒ„์ „์€ Temporal API๋ฅผ ํ†ตํ•ด ๊ณ ๊ธ‰์˜ ์ •ํ™•ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„ ์กฐ์ž‘ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ๊ธฐ์กด JavaScript Date ๊ฐœ์ฒด์˜ ํ•œ๊ณ„๋ฅผ ๋›ฐ์–ด๋„˜๊ณ ์ž ํ•˜๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

--unstable-temporal ํ”Œ๋ž˜๊ทธ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Temporal API๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„ ์ž‘์—…์— ๋Œ€ํ•œ ์ตœ์‹  ์†”๋ฃจ์…˜์œผ๋กœ ๊ฐ€๋“ ์ฐฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋กœ ์ œ๊ณต๋˜๋Š” ์ ์ง„์ ์ธ ํฌํ•จ์ž…๋‹ˆ๋‹ค. ๋‚ ์งœ ์ „์šฉ ๋˜๋Š” ์‹œ๊ฐ„ ์ „์šฉ๊ณผ ๊ฐ™์€ ํŠน์ • ์‹œ๊ฐ„์  ์ธก๋ฉด ์ „์šฉ ํด๋ž˜์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ๋””์ž์ธ ์ฒ ํ•™์€ ํ–ฅ์ƒ๋œ ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์„ ๊ฐ•์กฐํ•˜๊ณ  ๋ชจํ˜ธํ•œ ์‹œ๊ฐ„๋Œ€ ๊ฐ€์ •๊ณผ ๊ด€๋ จ๋œ ์ผ๋ฐ˜์ ์ธ ํ•จ์ •์„ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

์‹œ๊ฐ„์  ์„ฑ๋Šฅ ์™ธ์—๋„ Deno 1.40์€ ์ด์ œ Stage 3์—์„œ ์ตœ์‹  ECMAScript ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ๊ตฌ๋ฌธ์„ ์ฑ„ํƒํ•˜์—ฌ ๋ณด๋‹ค ์„ ์–ธ์ ์ธ ์ฝ”๋”ฉ ์Šคํƒ€์ผ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค. JavaScript ํด๋ž˜์Šค ๊ธฐ๋Šฅ์„ ๊ฐ•ํ™”ํ•  ์ค€๋น„๊ฐ€ ๋˜์–ด ์žˆ๋Š” ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ์— ๋Œ€ํ•œ ์ง€์›์€ ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ, ํŠนํžˆ ํŠธ๋žœ์ŠคํŒŒ์ผ๋Ÿฌ๊ฐ€ ๋งŽ์€ ์›Œํฌํ”Œ๋กœ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋ฐ˜ํ–ฅ์„ ๋ถˆ๋Ÿฌ์ผ์œผํ‚ฌ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ–ฅ์ƒ๋œ ๊ธฐ๋Šฅ๋„ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

  • import.meta.filename ๋ฐ import.meta.dirname ํ†ตํ•ด ๋ชจ๋“ˆ ์ปจํ…์ŠคํŠธ๊ฐ€ ํ–ฅ์ƒ๋˜์–ด ๋ชจ๋“ˆ ํŒŒ์ผ ๋ฐ ํ•ด๋‹น ๋””๋ ‰ํ„ฐ๋ฆฌ์— ๋Œ€ํ•œ ๊ฒฝ๋กœ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • fs.constants , os.machine ๋ฐ process.on('rejectionHandled') ์™€ ๊ฐ™์€ Node.js API gem ํ†ตํ•ฉ.
  • ๋‹จ์ˆœํ™”๋œ ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ deno.json ์˜ ์ข…์†์„ฑ ๊ด€๋ฆฌ๋ฅผ ๊ฐ„์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • deno lint ๋ฐ deno doc ์— ์—…๊ทธ๋ ˆ์ด๋“œ๋œ ์ง„๋‹จ ํ”„๋ฆฐํ„ฐ๊ฐ€ ์ถœ์‹œ๋˜์–ด ๊ฐœ๋ฐœ ํ๋ฆ„์„ ํ–ฅ์ƒํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • TypeScript ์–ธ์–ด ์„œ๋น„์Šค ๋‚ด ํ˜ธํ™˜์„ฑ ํ–ฅ์ƒ ๋ฐ ๋ฒ„๊ทธ ์ˆ˜์ •์„ ํ†ตํ•ด ๋ณด๋‹ค ์›ํ™œํ•œ ํ†ตํ•ฉ๊ณผ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ๋ถ„์•ผ์—์„œ ์ƒˆ๋กœ์šด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์˜ ๋ถ€์ƒ์„ ๋ชฉ๊ฒฉํ•จ์— ๋”ฐ๋ผ AppMaster no-code ํ”Œ๋žซํผ๊ณผ ๊ฐ™์€ ๋„๊ตฌ๋Š” ์ด๋Ÿฌํ•œ ๋ฐœ์ „์„ ํ™œ์šฉํ•˜๊ณ  ์ตœ์ฒจ๋‹จ ๊ธฐ์ˆ ์„ ํ†ตํ•ฉํ•˜์—ฌ ๋…ธ๋ จํ•œ ์—”์ง€๋‹ˆ์–ด์™€ ๋น„๊ธฐ์ˆ  ์ œ์ž‘์ž ๋ชจ๋‘ ๊ฐ•๋ ฅํ•œ ๋””์ง€ํ„ธ ์†”๋ฃจ์…˜์„ ์ œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์—ญ๋Ÿ‰์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ์Ÿ์‚ฌ ์ค‘์—์„œ Deno ๊ฐœ๋ฐœ์ž์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ AppMaster ์™€ ๊ฐ™์€ ํ”Œ๋žซํผ๊ณผ ๋น„์ „์„ ๊ณต์œ ํ•˜๋Š” ์›ํ™œํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์˜ ๋ชจ๋ฉ˜ํ…€์— ํฌ๊ฒŒ ๊ธฐ์—ฌํ•จ์œผ๋กœ์จ ๋‘๊ฐ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž๋Š” ์ด์ œ deno.com์˜ ๊ณต์‹ ํฌํ„ธ์„ ํ†ตํ•ด Deno 1.40์˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์ œ์ž‘์˜ ํ•œ๊ณ„๋ฅผ ๋›ฐ์–ด๋„˜์„ ์ค€๋น„๊ฐ€ ๋˜์–ด ์žˆ๋Š” ๋ณด๋‹ค ํ˜์‹ ์ ์ด๊ณ  ๊ฐœ๋ฐœ์ž ์นœํ™”์ ์ธ ์ƒํƒœ๊ณ„๋ฅผ ํ–ฅํ•œ ๋˜ ๋‹ค๋ฅธ ์ง„์ „์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started
Deno 1.40, ๋‚ ์งœ-์‹œ๊ฐ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ˜์‹ ํ•˜๋Š” ์ž„์‹œ API ๊ณต๊ฐœ | AppMaster