Seuraava artikkeli auttaa sinua: Miksi ihmiset vihaavat Electron.js:ää (ja miksi se on edelleen niin suosittu)
Electron on syöpä, Electron on flash työpöydälle, sano ei Electronille! Keskustelufoorumit ja blogialustat ovat täynnä vihaa elektroneihin – JavaScript GUI -kehykseen, jonka avulla kehittäjät voivat luoda työpöytäsovelluksia JavaScriptin, HTML:n ja CSS:n avulla.
Electronin avulla kehittäjä voi rakentaa verkkosivuston tai verkkosovelluksen, kääriä sen kromiselaimen sisään ilman kaikkia selaimen ohjaimia ja jakaa sitä ikään kuin se olisi natiivisovellus. Electronin avulla voit rakentaa monialustaisia ohjelmia, jotka toimivat Windowsissa, macOS:ssä ja Linuxissa ilman aiempaa kokemusta alkuperäisestä kehityksestä sisällyttämällä Chromiumin ja Node.js:n niiden binaariin.
Se on huono…
Electron-sovellukset yhdistävät Chromiumin ja NodeJ:t portin ulkopuolelle, mikä johtaa erittäin suureen sovelluksen kokoon. Jopa yksinkertainen Chromiumiin rakennettu sovellus voi olla resurssiintensiivinen ja käyttää luultavasti enemmän suoritinta ja RAM-muistia kuin alkuperäinen sovellus. RAM-muistin intensiivinen käyttö hidastaa entisestään tietokoneen nopeutta ja kuluttaa akkua nopeammin. Tämä vaikuttaa myös yleiseen käyttökokemukseen käyttäjän tietämättä sen syytä.
Silti suosittu…
Mutta tässä on asia, näillä haitoilla ei ole suurta merkitystä useimmille kehittäjille, kun on kyse isosta kuvasta. Kaikesta vihasta huolimatta se on edelleen suosituin kehys, jota käyttävät alustat, kuten Discord, Whatsapp, Microsoft Teams, Slack, Twitch ja monet muut.
Se on avoimen lähdekoodin ja sitä ylläpitää OpenJS-säätiö ja sen cross-platform, mikä tarkoittaa, että Electronilla rakennetut sovellukset toimivat Windowsissa, Macissa ja Linuxissa. Sen avulla kehittäjät voivat rakentaa automaattisia päivityksiä sovelluksiinsa integroituakseen käyttöjärjestelmän alkuperäiseen valikkojärjestelmään ja sen ilmoituksiin.
Tämä tarkoittaa, että web- tai NodeJs-kehittäjälle Electron tarjoaa hämmästyttävän kehittäjäkokemuksen ja tekee työpöytäsovelluksista käytännöllisen liiketoimintapäätöksen yrityksille. Jopa suuret yritykset, joilla on paljon lahjakkuutta ja rahaa, valitsevat silti Electronin, koska se on liiketoiminnallisesti järkevämpää päivän päätteeksi. Ainoa asia, jolla on merkitystä, on se, että rakennat mahtavan käyttökokemuksen, jonka voit ehdottomasti tehdä Electronilla, eivätkä käyttäjäsi edes tiedä tai välitä, mitä tekniikkaa käytit sovelluksen rakentamiseen.
Electron-vihaaja, mutta käyttäjä tiivistää kokemuksestaan: “Churchillin sanamuodon mukaan Electron on huonoin arkkitehtuuri työpöytäsovelluksille, lukuun ottamatta kaikkia muita, joita on kokeiltu.”
Tauri: Ihmelääke
Kehittäjät etsivät pitkään vaihtoehtoa monikäyttöisten sovellusten rakentamiseen. Nyt odotus on päättynyt Taurin kanssa. Se on työkalupakki alkuperäisten työpöytäsovellusten rakentamiseen vuokratuilla verkkotekniikoilla ja kevyellä Rust-taustajärjestelmällä. Tauri antaa kehittäjille mahdollisuuden käyttää suosikki JavaScript-kehystään suunnitellakseen käyttöliittymän ja sitten pakata sen MAC OS:lle, Windowsille ja Linuxille yhdestä koodikannasta.
Toisin kuin Electron, joka tarjoaa taustan Nodejsissa ja käyttöliittymän Chromium-selaimen kanssa, Tauri käyttää erilaista lähestymistapaa korvaamalla Node.js:n Rustilla ja Chromiumilla kirjastoilla, kuten Tau ja Wry. Tämä lähestymistapa tarjoaa kevyen verkkonäkymän, ja lopputuloksena on pienempi nippukoko ja tehokkaampi muistinkulutus. Se suhtautuu myös tietoturvaan erittäin vakavasti ja tarjoaa eristysmallin, jolla estetään epäluotettavia komentosarjoja pääsemästä taustajärjestelmään verkkonäkymästä. Tauri API tarjoaa turvallisen tavan käyttää alkuperäisiä toimintoja, kuten tiedostojärjestelmän http ja järjestelmäilmoitukset. Se on oletuksena turvallinen, ja käyttöliittymän ainoa tapa soittaa takaisin ja koodittaa on, kun kehittäjä nimenomaisesti sallii sen.
Kehittäjät uskovat, että Tauri voi kehittyä edelleen pisteeseen, jossa se syrjäyttää Electronin merkittävänä “etupään” GUI-kehyksenä. Se, että se on luotu Rustissa, saattaa pelotella joitain kehittäjiä, mutta lyhyt aika, joka kestää sen toiminnan ymmärtämiseen, on ehdottomasti sen arvoista.