Platforma Deno 2.9 me mbështetje për Deno Desktop për krijimin e aplikacioneve desktop

ËshtĂ« publikuar versioni i platformĂ«s Deno 2.9, e cila Ă«shtĂ« e destinuar pĂ«r ekzekutimin e ndarĂ« tĂ« aplikacioneve server dhe desktop nĂ« gjuhĂ«t JavaScript dhe TypeScript duke pĂ«rdorur motorin V8, i aplikuar nĂ« shfletuesit qĂ« bazohen nĂ« Chromium. Projekti zhvillohet nga Ryan Dahl, krijuesi i Node.js, me qĂ«llim ofrimin e njĂ« ambienti mĂ« tĂ« sigurt dhe eliminimin e gabimeve konceptuale tĂ« bĂ«rĂ« nĂ« arkitekturĂ«n e Node.js. PĂ«r tĂ« rritur sigurinĂ«, mbĂ«shtjellja pĂ«r motorin V8 Ă«shtĂ« shkruar nĂ« gjuhĂ«n Rust, dhe pĂ«r pĂ«rpunimin e kĂ«rkesave nĂ« mĂ«nyrĂ« jo bllokuese, aplikohet platforma Tokio. Kodi i projektit shpĂ«rndahet nĂ«n licencĂ«n MIT. NdĂ«rtimet janĂ« pĂ«rgatitur pĂ«r Linux, Windows dhe macOS.

Versioni e re e veçan e cila përmban implementimin e një mjeti eksperimental, Deno Desktop, i cili lejon krijimin e aplikacioneve të personalizuara me ndërfaqe grafike, të ndërtuara duke përdorur teknologjitë web, në mënyrë të ngjashme me platformën Electron. Logjika dhe ndërfaqja e aplikacionit përcaktohen në gjuhën JavaScript ose TypeScript duke përdorur kornizat tipike web, ndërsa funksionimi organizohet duke përdorur motorin e shfletuesit. Aplikacioni ofrohet në formën e një skedari ekzekutiv të pavarur dhe në interaksionin me përdoruesin nuk dallon nga programet klasike me ndërfaqe grafike.

Deno Desktop ofron b backend për të punuar mbi dy motorë shfletuesish - WebView, i ofruar nga sistemi operativ, dhe CEF (Chromium Embedded Framework) i integruar në aplikacion. Backend-i mbi WebView lejon reduktimin e madhësisë së skedeve të ekzekutueshme përmes funksionimit mbi motorin shfletues sistematik WebView2 në Windows dhe WebKit në macOS dhe Linux, ndërsa backend-i CEF ofron mundësinë për të arritur të njëjtin paraqitje të ndërfaqes në platformat Linux, macOS dhe Windows, por me një rritje të konsiderueshme të madhësisë së skedeve të ekzekutueshme.

MadhĂ«sia e skedarit ekzekutiv tĂ« aplikacionit testues kur pĂ«rdoret WebView vlerĂ«sohet nĂ« 40 MB, ndĂ«rsa kur pĂ«rdoret CEF — 150 MB. PĂ«r krahasim, pĂ«r Electron ky tregues Ă«shtĂ« 100 MB, pĂ«r Electrobun — 61 MB, dhe pĂ«r Tauri — 2-10 MB (nĂ« Electron pĂ«rdoret CEF i integruar nĂ« aplikacion, ndĂ«rsa nĂ« Electrobun dhe Tauri WebView sistemor). NjĂ« mekanizĂ«m pĂ«r ndarjen e motorit tĂ« zakonshĂ«m CEF nĂ« aplikacione tĂ« ndryshme Ă«shtĂ« duke u zhvilluar, i cili do tĂ« mundĂ«sojĂ« uljen e madhĂ«sisĂ« sĂ« skedarĂ«ve ekzekutivĂ«.

Deno Desktop ofron plotesisht kompatibilitet me Node.js, ekosistemin NPM dhe framework-et web si Next.js, Astro, Fresh, Remix, Nuxt, SvelteKit, SolidStart, TanStack Start dhe Vite SSR. Ofron njĂ« API pĂ«r aksesin nĂ« API-tĂ« native desktop, siç janĂ« menaxhimi i madhĂ«sisĂ«, pozicionit dhe dukshmĂ«risĂ« sĂ« dritares, krijimi i menive, ngjitja e trajtuesve tĂ« tuaj, vendosja e ikonave pĂ«r sistemin e panelit dhe dialogĂ«t vendorĂ« pĂ«r OS. ËshtĂ« e mundur tĂ« ndĂ«rtohen aplikacione web si programe desktop pa ndryshuar kodin e tyre, si dhe pĂ«rcaktimi automatik i framework-eve web tĂ« pĂ«rdorura dhe ndĂ«rkompajlimi nĂ« njĂ« sistem pĂ«r Linux x64/arm64, Windows x64 dhe macOS x64/arm64. PĂ«r Linux mund tĂ« gjenerohen paketa nĂ« formatet AppImage, deb dhe rpm.

Në contrast me Electron, Electrobun dhe Tauri në Deno Desktop përdoret një model i thjeshtë shumëthirrës për CEF ose një model të bazuar në grupe procesesh për WebView me ndërveprimin midis prapavijës dhe kodit të ndërfaqes grafike përmes kanaleve brenda një procesi. Ka një mekanizëm të integruar për të kontrolluar dhe instaluar automatikisht azhurnimet, duke ngarkuar vetëm të dhënat që janë ndryshuar në raport me versionin e kaluar (përdoren patches binarë të bazuar në bsdiff) dhe mbështet rikthimin në versionin e mëparshëm në rast të dështimit gjatë nisjes së versionit të ri.

Ndër risitë e tjera në Deno 2.9:

  • MbĂ«shtetje nĂ« komandĂ«n 'deno install' pĂ«r leximin e drejtpĂ«rdrejtĂ« tĂ« skedarĂ«ve lock pĂ«r tĂ« thjeshtuar migrimin nĂ« Deno nga npm, pnpm, yarn dhe Bun.
  • MbĂ«shtetje pĂ«r importimin e moduleve CSS.
  • Implementimi i kompatibilitetit me platformĂ«n Node.js 26.
  • Komandat e reja 'deno link', 'deno unlink' dhe 'deno list'.
  • MbĂ«shtetje pĂ«r API Web Locks pĂ«r vendosjen e bllokimeve mbi burime.
  • Aktivizimi nĂ« mĂ«nyrĂ« tĂ« paracaktuar i njĂ« vonese 24-orĂ«she (min-release-age=24h) para instalimit tĂ« versioneve tĂ« reja tĂ« varĂ«sive pĂ«r tĂ« mbrojtur nga sulmet pĂ«rmes kompromitimit tĂ« varĂ«sive.
  • Reduktimi i kohĂ«s sĂ« nisjes (~2x), ulja e konsumit tĂ« memories (~2.2x) dhe rritja e kapacitetit tĂ« pĂ«rçueshmĂ«risĂ« gjatĂ« punĂ«s me HTTP (~1.2x).



    Burimi: opennet.ru
Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster