Pjattaforma Deno 2.9 b'appoġġ għal Deno Desktop għall-ħolqien ta' applikazzjonijiet tad-desktop

Ġiet rilaxxata Deno 2.9, pjattaforma ddisinjata għall-eżekuzzjoni waħedha ta' applikazzjonijiet fuq in-naħa tas-server u tad-desktop miktuba f'JavaScript u TypeScript bl-użu tal-magna V8, użata fil-browsers ibbażati fuq Chromium. Il-proġett qed jiġi żviluppat minn Ryan Dahl, il-kreatur ta' Node.js, bil-għan li jipprovdi ambjent aktar sigur u jelimina żbalji kunċettwali fl-arkitettura Node.js. Biex tittejjeb is-sigurtà, il-qafas V8 huwa miktub f'Rust, u l-pjattaforma Tokio tintuża għall-ipproċessar ta' talbiet mhux imblukkati. Il-kodiċi tal-proġett huwa mqassam taħt il-liċenzja MIT. Il-bini huwa ppreparat għal Linux, Windows и macOS.

Il-verżjoni l-ġdida hija notevoli għall-implimentazzjoni tagħha tas-sett ta' għodod sperimentali Deno Desktop, li jippermetti l-ħolqien ta' applikazzjonijiet GUI apposta mibnija bl-użu ta' teknoloġiji tal-web, simili għall-pjattaforma Electron. Il-loġika u l-interfaċċja tal-applikazzjoni huma definiti f'JavaScript jew TypeScript bl-użu ta' oqfsa tal-web standard, u l-applikazzjoni hija eżegwita bl-użu ta' magna bbażata fuq il-browser. L-applikazzjoni hija kkunsinnata bħala fajl eżegwibbli awtonomu u toffri interfaċċja għall-utent simili għal dik tal-programmi GUI klassiċi.

Deno Desktop joffri backends biex jaħdmu fuq żewġ magni tal-browser: il-WebView tas-sistema operattiva u s-CEF (Chromium Embedded Framework) integrat fl-applikazzjoni. Il-backend ibbażat fuq il-WebView jippermetti daqsijiet iżgħar ta' fajls eżegwibbli billi jaħdem fuq il-magna tal-browser WebView2 tas-sistema. Windows u WebKit fi macOS и Linux, u l-backend tas-CEF jagħmilha possibbli li jinkiseb l-istess rendering tal-interfaċċja fuq il-pjattaformi kollha Linux, macOS и Windows, iżda bil-prezz ta' żieda sinifikanti fid-daqs tal-fajls eżegwibbli.

Id-daqs tal-fajl eżegwibbli tal-applikazzjoni tat-test huwa stmat għal 40 MB bl-użu ta' WebView, u 150 MB bl-użu ta' CEF. Għal paragun, din iċ-ċifra hija 100 MB għal Electron, 61 MB għal Electrobun, u 2-10 MB għal Tauri (Electron juża CEF inkorporat, filwaqt li Electrobun u Tauri jużaw is-sistema WebView). Mekkaniżmu għall-kondiviżjoni ta' magna CEF komuni bejn l-applikazzjonijiet qed jiġi żviluppat, li se jnaqqas id-daqs tal-fajls eżegwibbli.

Deno Desktop huwa kompletament kompatibbli ma' Node.js, l-ekosistema NPM, u oqfsa tal-web bħal Next.js, Astro, Fresh, Remix, Nuxt, SvelteKit, SolidStart, TanStack Start, u Vite SSR. API hija pprovduta għall-aċċess tal-APIs tad-desktop nattivi. Pereżempju, tista' tikkontrolla d-daqs, il-pożizzjoni, u l-viżibilità tat-twieqi, toħloq menus, twaħħal handlers apposta, tissettja ikoni għat-trej tas-sistema u l-pannelli, u turi djalogi tas-sistema operattiva nattivi. L-applikazzjonijiet tal-web jistgħu jinbnew bħala programmi tad-desktop mingħajr ma jinbidel il-kodiċi tagħhom, u l-oqfsa tal-web użati jistgħu jiġu skoperti awtomatikament u kkompilati b'mod inkroċjat fuq sistema waħda għal Linux x64/arm64, Windows x64 u macOS x64/arm64. Għal Linux Il-pakketti jistgħu jiġu ġġenerati fil-formati AppImage, deb u rpm.

B'differenza minn Electron, Electrobun, u Tauri, Deno Desktop ma jużax mudell ta' eżekuzzjoni b'ħafna proċessi b'IPC ibbażat fuq sockets. Minflok, juża mudell b'ħafna threads għal CEF jew mudell ibbażat fuq gruppi ta' proċessi għal WebView, b'komunikazzjoni bejn il-backend u l-kodiċi tal-GUI permezz ta' kanali intra-proċess. Għandu mekkaniżmu integrat ta' kontroll tal-aġġornament u installazzjoni awtomatika li, biex jiffranka l-bandwidth, iniżżel biss dejta li nbidlet mill-verżjoni preċedenti (bl-użu ta' patches binarji bbażati fuq bsdiff) u jappoġġja rollback għall-verżjoni preċedenti f'każ ta' falliment meta titnieda verżjoni ġdida.

Karatteristiċi ġodda oħra f'Deno 2.9 jinkludu:

  • Appoġġ għall-qari dirett tal-fajls tal-illokkjar fil-kmand "deno install" biex tissimplifika l-migrazzjoni għal Deno minn npm, pnpm, yarn, u Bun.
  • Appoġġ għall-importazzjoni ta' moduli CSS.
  • Implimentazzjoni tal-kompatibilità mal-pjattaforma Node.js 26.
  • Kmandi ġodda "deno link", "deno unlink" u "deno list".
  • Appoġġ għall-Web Locks API għall-issettjar ta' serraturi fuq ir-riżorsi.
  • Ippermetti dewmien awtomatiku ta' 24 siegħa (min-release-age=24h) qabel ma tinstalla verżjonijiet ġodda ta' dipendenzi biex tipproteġi kontra attakki ta' kompromess tad-dipendenza.
  • Ħin tal-istartjar imnaqqas (~2x), konsum tal-memorja mnaqqas (~2.2x), u throughput miżjud meta taħdem bl-HTTP (~1.2x).



    Sors: opennet.ru
Ixtri hosting affidabbli għal siti bi protezzjoni DDoS, servers VPS VDS 🔥 Ixtri hosting ta' websajts affidabbli bi protezzjoni DDoS, servers VPS VDS | ProHoster