Kaj so elektronske aplikacije in zakaj so postale tako pogoste?
Ali ste opazili, da veliko novih namiznih aplikacij izgleda precej podobno kot spletna mesta? To ni tvoja domišljija.
Od Trella do Slack-a, od WordPress.com-a do Github-a, je vedno bolj običajno, da tako imenovane namizne aplikacije združijo spletno stran z nekaj domačimi funkcijami, kot so obvestila, dostop do datotečnega sistema in meniji. Najpogostejša tehnologija, ki to omogoča, se imenuje Electron, uporablja pa jo nekaj aplikacij, ki jih morda niti ne sumite, na primer aplikacijo za klepet Discord in Microsoftovo kodo Visual Studio..
Program Electron omogoča razvijalcem, da sočasno izdajo aplikacijo v operacijskih sistemih Windows, MacOS in Linux. Elektronske aplikacije so velike. Slack, aplikacija za klepet, zavzema 237 MB prostora na trdem disku na mojem Mac računalniku, poraba pomnilnika pa ni nizka. Kaj vse prevzema ta sredstva? In zakaj razvijalci uporabljajo nekaj tako neučinkovitega?
Elektronske aplikacije so zelo preproste za izdelavo
Namizne aplikacije je težko izdelati, še posebej, če želite, da so medmrežne. Dostop do datotečnega sistema v operacijskem sistemu Windows deluje drugače, kot na primer v Linuxu, pri MacOS pa obvestila delujejo drugače kot v sistemu Windows. To pomeni, da mora vsak, ki želi napisati aplikacijo za vse tri namizne operacijske sisteme (ali celo dva od njih), pri prenosu iz enega v drugega ponovno napisati veliko kode..
Electron to »reši« tako, da ponuja eno samo platformo, ki deluje na vseh treh glavnih namiznih operacijskih sistemih. To pomeni, da lahko razvijalci enkrat zapišejo kodo za stvari, kot so obvestila, in pričakujejo, da bo delovala na vsakem operacijskem sistemu. Še boljši za razvijalce: vse je mogoče zgraditi z uporabo Javascripta, HTML-ja in CSS-tehnologij, vsakdo, ki kodira za splet, dobro pozna.
Electron Apps prihajajo s precej vsega kroma
Kako je to mogoče? Deloma zato, ker vsaka aplikacija Electron združuje celoten spletni brskalnik: Chromium, odprto kodno različico Google Chroma. To je povezano z navodili, specifičnimi za platformo, da bi zagotovili, da se vse obnaša natančno tako, kot pričakujejo razvijalci na vseh sistemih. Zato namizna različica Slacka zavzema več kot 200 MB prostora na trdem disku: večino Chromea je v paketu.
Vsaka aplikacija Electron, ki jo izvajate, je bolj ali manj poln primer brskalnika Chrome. Kot je izpostavil bloger Joseph Gentle, je to komajda idealno:
Slack si lahko zamislite kot majhen program JavaScript, ki se izvaja znotraj drugega operacijskega sistema VM (chrome), ki ga morate zagnati, da bi v bistvu klepetali na IRC. Tudi če imate pravo krom odprto, vsaka elektronska aplikacija ima svojo lastno, dodatno kopijo celotnega VM.
Torej, ja, obstajajo slabosti za uporabnike. Najprej, vsaka posamezna aplikacija, ki jo prenesete, združuje večino Chromiuma in vsaka aplikacija, ki jo izvajate, izvaja dober kos te kode. Tukaj ni skupne rabe virov, kot je pri domačih aplikacijah, kar pomeni, da bodo aplikacije Electron zasedle več prostora na trdem disku in pomnilnika kot aplikacija, razvita posebej z vašo platformo. Če je zmogljivost nekaj, kar vam je res všeč, se boste morda želeli izogniti aplikacijam Electron.
Počakajte, torej je dobro ali slabo?
Na tej točki so računalniki tako močni, da večina uporabnikov ne bo nikoli opazila, kako neučinkovite so aplikacije Electron. Pravzaprav velika večina še nikoli ni slišala za Electron. Večina mojih sodelavcev ni bila in vsi uporabljajo Slack vsak dan. Mnogi so bili navdušeni, ko so videli, da je na voljo namizna različica Trella, in spet ni imela pojma, da gre za aplikacijo Electron.
In te aplikacije se res bolje integrirajo z vašim operacijskim sistemom kot spletne strani. Živijo v svojem oknu. Ponujajo odlične bližnjice na tipkovnici, izvirna obvestila in druge stvari, ki jih ne morete storiti na enak način samo z brskalnikom.
In to je dobra stava, da aplikacije, kot so Slack, Trello in WordPress.com, ne bi poskušale ponuditi namizne različice, če Electron ne bi obstajal in se namesto tega osredotočil na mobilne in brskalniške različice. Vprašanje ni, ali je Electron slab; to je, ali so aplikacije Electron boljše kot nič. Pripravljen sem reči da, vendar razumni ljudje se ne strinjajo. (In za te ljudi vedno obstaja spletna različica.)