PWA vs Electron: A Deep Dive
Publicat: 2020-05-20Cuprins
Se pare că există prea multe tehnologii noi în domeniu în zilele noastre pentru ca noi să le urmărim. Recent, am observat o apariție a Electron.js, care este o platformă puternică în spatele unui număr nu atât de mic de aplicații populare pe care le folosim în fiecare zi, iar apoi există și Progressive Web App, care ar trebui să fie o nouă modalitate de site-uri web pentru a oferi experiențe de vârf, captivante pentru clienți, fără a sacrifica performanța pe parcurs.
Pentru a vă ajuta cel mai bine să urmăriți toate aceste tehnologii noi, astăzi, în articolul SimiCart, vom compara între cele două — Electron și PWA, în modul cel mai cuprinzător.
Ce este PWA?
PWA pare să fie foarte popular în aceste zile, deoarece este o tehnologie susținută de Google și are toată atenția băieților mari, cum ar fi Microsoft, cu planul lor ambițios de a face Microsoft Store plin de PWA. Motivul pentru care este atât de popular este că PWA în sine este cel mai bun lucru venit de pe web în ultimii ani – istoricul său vorbește de la sine.
Pentru a spune simplu, Progressive Web Apps sunt site-uri web care arată și se simt ca o aplicație. Tehnologia este o combinație de cele mai bune funcții atât de pe web, cât și din aplicațiile native, ceea ce înseamnă că utilizatorii care folosesc PWA pot beneficia de toate funcțiile care anterior exclusiv aplicațiilor native, cum ar fi notificările push, localizarea geografică și multe altele.

Ce este Electron?
În comparație cu PWA, Electron este similar în multe privințe, deoarece, de asemenea, utilizează tehnologiile web-adică, HTML, CSS, JavaScript-pentru a aborda cel mai bine provocarea multiplatformă. Cu toate acestea, spre deosebire de PWA, aplicațiile alimentate cu electroni pot fi transformate în aplicații desktop complet funcționale, datorită utilizării API- urilor native și a motorului de randare Chromium . De fapt, este atât de funcțional încât de multe ori nu se poate distinge de aplicațiile desktop native și ai fi putut întâlni una fără să știi că este bazată pe Electron - de exemplu, unele dintre aplicațiile tale esențiale sunt probabil bazate pe Electron, inclusiv Skype, Slack, Discord , și Codul Visual Studio.

Nu cumva Electron sună mai bine?
Ei bine, când o spui așa... cam așa se întâmplă; dar nu, este mai nuanțat decât atât. Există un motiv pentru care asistăm la o încetinire recentă a numărului de aplicații bazate pe Electron - asta pentru că Electron își arată vechimea, mai ales într-un moment de acum când utilizatorii sunt acum mai pretențioși față de experiența omnicanal pe care o oferă PWA ca niciodată. .
Când solicităm contribuții de la dezvoltatorii experimentați atât ai Electron, cât și ai PWA, am observat următoarele modele:
- Disponibilitate : Deoarece aplicațiile bazate pe Electron sunt aproape o versiune hibridă a aplicațiilor desktop și nu pot fi instalate deloc pe dispozitive mobile, PWA are avantajul de a fi disponibil pe aproape orice dispozitiv care are un browser compatibil PWA.
- Performanță : o aplicație bazată pe electroni, atunci când este făcută corect, ar trebui să pară la fel de rapidă și ușoară ca o aplicație de text, dar aceasta nu este cea mai bună performanță pe care o puteți obține. Un avantaj cunoscut al PWA este că puteți obține performanțe mai bune (comparativ cu Electron) la prima încărcare și timp de încărcare aproape instantaneu la încărcările ulterioare, deoarece totul este stocat în cache din mers și o mare parte din supraîncărcarea JavaScript poate fi mutată în schimb pe lucrătorii de servicii care sunt parte integrantă a PWA.
- Actualizare : După cum știm cu toții, actualizarea (și implementarea în general) este o problemă majoră pentru aplicațiile native de orice fel, iar Electron nu face excepție. Acest lucru poate fi evitat optând pentru abordarea PWA cu care întregul proces de actualizare poate avea loc pe partea de server, scutindu-vă astfel clienții de procesul de instalare a actualizărilor.
- Dimensiune : Electron, deși cântărește mai puțin decât aplicația desktop tipică, este totuși considerabil mai greu decât PWA. Este greu să găsești o aplicație Electron care cântărește mai puțin de 50 MB, în timp ce majoritatea PWA este sub un megaoctet.
- Securitate : PWA este mai bine atunci când vine vorba de securitate, deoarece se bazează în întregime pe conexiuni securizate (HTTPS) menținute de partea browserului, în timp ce Electron, fiind o aplicație web înfășurată în containerul de aplicații native, trebuie să facă totul manual de la sine.
De ce PWA devine din ce în ce mai popular
Iată adevărul, Electron este o tehnologie învechită. În ciuda faptului că este utilizat în prezent de un număr mare de aplicații desktop, multe dintre acestea au deja planuri de a-și converti aplicațiile desktop existente bazate pe Electron în PWA. Da, puteți converti o aplicație bazată pe Electron într-o PWA, deși nu va fi un proces la fel de ușor în comparație cu procesul de conversie de la PWA la Electron, dar este posibil.

Electron fără toate defectele sale
Progressive Web Apps se poate spune că sunt o tehnologie mai bună, cu potențial mai evolutivă, deoarece rezolvă problemele fundamentale ale Electron - compatibilitate și ușurință în distribuție - rămânând în același timp funcționale și captivante pentru experiența utilizatorului. Acest lucru se datorează faptului că browserele de astăzi devin propriul sistem de operare universal cu toate capabilitățile pe care le-ați putea cere și, ca efect secundar, tehnologiile care se bazează și rulează pe web, cum ar fi PWA, se îmbunătățesc doar cu timpul. .
Vezi mai mult: Desktop PWA - Viitorul Software Delivery PWA pentru Magento 2
Omnicanal
Când vine vorba de experiența omnicanal, PWA excelează în toate modurile imaginabile, deoarece este creat special pentru experiența receptivă cu mai multe dispozitive. În funcție de tipul de afacere implicat, PWA poate fi de preferat pentru companiile care doresc ca experiența utilizatorului să fie una și aceeași pe toate dispozitivele, în timp ce cu Electron JS va trebui să dezvoltați baze de cod diferite pentru diferite platforme, crescând astfel costul de dezvoltare.
Când să alegeți Electron
Deși are avantajele sale, PWA nu poate fi o soluție atotcuprinzătoare pentru toate modelele de afaceri și aici își găsește nișa Electron. Aplicațiile care se bazează pe Electron, de obicei, nu se confruntă cu constrângerile obișnuite ale browserului și sunt libere să se dezvolte pe baza funcționalității Node.js, cu care Electron poate avea acces la toate API-urile native ale sistemului de operare. Aceasta înseamnă că aplicațiile bazate pe Electron rulează în modul utilizator tot timpul, asigurând efectiv un mediu de operare sigur și stabil pentru utilizator.
Ca regulă generală în comunitatea Electron, nu este niciodată o idee bună să folosiți Electron pentru ceea ce poate fi doar un site web . Deci, dacă credeți că aplicația dvs. se încadrează în mica minoritate de cazuri când aveți nevoie de libertate suplimentară și funcționalități ale aplicațiilor native, alegeți Electron; dar în orice alt caz, un PWA este mai mult decât suficient.
Încheierea cuvintelor
Web-ul cu tehnologiile sale ajunge rapid din urmă și, combinat cu trecerea de la mărcile mari pentru a promova adoptarea PWA, nu ar trebui să fie surprinzător pentru tine să vezi mai multe PWA în viitor. Cu toate acestea, asta nu înseamnă că nici Electron este pe patul de moarte, deoarece tehnologia este, încă, destul de funcțională și se așteaptă să fie aici pentru o perioadă de timp; dar dacă sunteți unul dintre cei care iau în considerare între cele două, PWA este o alegere fără îndoială, deoarece tehnologia este încă relativ proaspătă și se estimează că suportul pentru aceasta va crește vertiginos în viitorul apropiat.
Citeste mai mult:
PWA vs Flutter: o comparație detaliată
Tot ce trebuie să știți despre Progressive Web Apps
Aplicații web progresive: 12 exemple din mărci reale pentru inspirația ta
Magento PWA Studio: o comparație detaliată cu Vue Storefront