Chromium ์—”์ง„ ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•์„ ์œ„ํ•œ ํ”Œ๋žซํผ์ธ Electron 13.0.0 ์ถœ์‹œ

Chromium, V13.0.0 ๋ฐ Node.js ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์ค‘ ํ”Œ๋žซํผ ์‚ฌ์šฉ์ž ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์ž๊ธ‰์ž์กฑ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” Electron 8 ํ”Œ๋žซํผ์˜ ์ถœ์‹œ๊ฐ€ ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฒ„์ „ ๋ฒˆํ˜ธ๊ฐ€ ํฌ๊ฒŒ ๋ณ€๊ฒฝ๋œ ๊ฒƒ์€ Chromium 91 ์ฝ”๋“œ๋ฒ ์ด์Šค, Node.js 14.16 ํ”Œ๋žซํผ ๋ฐ V8 9.1 JavaScript ์—”์ง„ ์—…๋ฐ์ดํŠธ๋กœ ์ธํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ƒˆ ๋ฆด๋ฆฌ์Šค์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํ˜„์žฌ ๋ Œ๋”๋ง ์ปจํ…์ŠคํŠธ๊ฐ€ ๋ณ„๋„์˜ ๊ฒฉ๋ฆฌ๋œ ํ”„๋กœ์„ธ์Šค์—์„œ ์‹คํ–‰๋˜๋„๋ก ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด process.contextIsolated ์†์„ฑ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์„ธ์…˜ ๊ด€๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ๋””์Šคํฌ ๊ฒฝ๋กœ๋ฅผ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•ด session.storagePath๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • WebContents API๋Š” "new-window" ์ด๋ฒคํŠธ์— ๋Œ€ํ•œ ์ง€์›์„ ์ค‘๋‹จํ–ˆ์œผ๋ฉฐ ๋Œ€์‹  webContents.setWindowOpenHandler() ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด ์—ฐ๊ฒฐ๋œ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ธฐ๋ณธ ํ”„๋กœ์„ธ์Šค์™€ ํŽ˜์ด์ง€ ๋ Œ๋”๋ง ํ”„๋กœ์„ธ์Šค ๊ฐ„์— ํ†ต์‹ ํ•  ๋•Œ @electron/remote ๋ชจ๋“ˆ์— ์‚ฌ์šฉ๋˜๋Š” process.contextId ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋งž์ถค๋ฒ• ๊ฒ€์‚ฌ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” API๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

Electron์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ € ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ทธ๋ž˜ํ”ฝ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ทธ ๋…ผ๋ฆฌ๋Š” JavaScript, HTML ๋ฐ CSS๋กœ ์ •์˜๋˜๊ณ  ๊ธฐ๋Šฅ์€ ์ถ”๊ฐ€ ์‹œ์Šคํ…œ์„ ํ†ตํ•ด ํ™•์žฅ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ๊ธฐ๋ณธ ๋Œ€ํ™” ์ƒ์ž ์ƒ์„ฑ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ†ตํ•ฉ, ์ƒํ™ฉ์— ๋งž๋Š” ๋ฉ”๋‰ด ์ƒ์„ฑ, ์•Œ๋ฆผ ์‹œ์Šคํ…œ ํ†ตํ•ฉ, ์ฐฝ ์กฐ์ž‘, Chromium ํ•˜์œ„ ์‹œ์Šคํ…œ๊ณผ ์ƒํ˜ธ ์ž‘์šฉ์„ ์œ„ํ•œ ํ™•์žฅ API๋Š” ๋ฌผ๋ก  Node.js ๋ชจ๋“ˆ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๋‹ฌ๋ฆฌ Electron ๊ธฐ๋ฐ˜ ํ”„๋กœ๊ทธ๋žจ์€ ๋ธŒ๋ผ์šฐ์ €์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์€ ์ž์ฒด ํฌํ•จ ์‹คํ–‰ ํŒŒ์ผ๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๋™์‹œ์— ๊ฐœ๋ฐœ์ž๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋‹ค๋ฅธ ํ”Œ๋žซํผ์œผ๋กœ ํฌํŒ…ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ๊ฑฑ์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Electron์€ Chromium์ด ์ง€์›ํ•˜๋Š” ๋ชจ๋“  ์‹œ์Šคํ…œ์šฉ์œผ๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Electron์€ ์—…๋ฐ์ดํŠธ ์ž๋™ ์ „๋‹ฌ ๋ฐ ์„ค์น˜๋ฅผ ์œ„ํ•œ ๋„๊ตฌ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค(์—…๋ฐ์ดํŠธ๋Š” ๋ณ„๋„์˜ ์„œ๋ฒ„์—์„œ ๋˜๋Š” GitHub์—์„œ ์ง์ ‘ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Œ).

Electron ํ”Œ๋žซํผ์— ๊ตฌ์ถ•๋œ ํ”„๋กœ๊ทธ๋žจ์—๋Š” Atom ํŽธ์ง‘๊ธฐ, Mailspring ์ด๋ฉ”์ผ ํด๋ผ์ด์–ธํŠธ, GitKraken ํˆดํ‚ท, WordPress ๋ฐ์Šคํฌํƒ‘ ๋ธ”๋กœ๊น… ์‹œ์Šคํ…œ, WebTorrent ๋ฐ์Šคํฌํƒ‘ BitTorrent ํด๋ผ์ด์–ธํŠธ๋Š” ๋ฌผ๋ก  Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire์™€ ๊ฐ™์€ ์„œ๋น„์Šค๋ฅผ ์œ„ํ•œ ๊ณต์‹ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. , Wrike, Visual Studio Code ๋ฐ Discord. ์ „์ฒด์ ์œผ๋กœ Electron ํ”„๋กœ๊ทธ๋žจ ์นดํƒˆ๋กœ๊ทธ์—๋Š” 1016๊ฐœ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ๋‹จ์ˆœํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ํฌํ•จํ•˜์—ฌ ํ‘œ์ค€ ๋ฐ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ธํŠธ๊ฐ€ ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€