Blog – 16.02.2018 Ce este o Progressive Web App (PWA) și de ce ar trebui să-mi pese?

Cum ați ajuns la această postare pe blog, probabil că ați auzit undeva termenul PWA. Bravo ție – PWA-urile sunt ceea ce va face ca anul 2018 să fie ținut minte, așa că te afli chiar pe muchie de cuțit. Cât de interesant! În acest articol de blog, vă explic ce înseamnă de fapt acest termen și de ce ar trebui să vă intereseze.
Progressive Web App

Progressive Web App

(sursa: Google Developer site)

Ce este un PWA?

PWA înseamnă Progressive Web Application. Să o examinăm împărțind-o în două părți. Ultimele două cuvinte („Web Application”) vorbesc de la sine. PWA-urile sunt aplicații web. Aici, aplicație web înseamnă pur și simplu o aplicație care rulează ca un site web, cum ar fi, de exemplu, Twitter. Prima parte a termenului – Progressive – înseamnă că experiența utilizatorului este îmbunătățită treptat, în funcție de capacitățile browserului. În esență, acest lucru înseamnă că aplicația web funcționează bine în browsere mai vechi, dar poate utiliza tehnologii mai noi pentru a îmbunătăți experiența dacă utilizatorul folosește un browser care le suportă. Sună simplu, nu-i așa? Deci, de unde provine termenul?

Progresiv înseamnă că experiența utilizatorului este îmbunătățită treptat în funcție de capacitățile browserului

Termenul a fost introdus de inginerul Google Chrome Alex Russell în postarea sa de pe blog în 2015. De atunci, Google a promovat în mod activ utilizarea lor și a pus la dispoziție o mulțime de resurse pe această temă, cum ar fi un site care le explică mai detaliat.
În timp ce susțin prezentări în jurul PWA-urilor, mă lovesc întotdeauna de aceeași confuzie în acest punct. „Deci… este o tehnologie? Este un standard? Este ceva deținut/brevetat de Google?”. Nu, nimic din toate acestea. Este pur și simplu un termen pentru a descrie un mod specific de a proiecta și construi aplicații. În continuare, să încercăm să înțelegem ce sunt, trecând în revistă caracteristicile.
Iată cele 9 caracteristici originale ale PWA de către Alex Russell, cu o explicație a ceea ce înseamnă ele în acest context:

  • Responsive: Pagina arată bine pe diferite dimensiuni de ecran (de exemplu, telefon, tabletă, desktop)
  • Independent de conectivitate: Funcționează fără conexiune la internet
  • Interacțiuni de tip aplicație: Look’n’feel of native application
  • Fresh: Întotdeauna actualizat
  • Sigur: Utilizează conexiunea securizată pentru a atenua mai multe tipuri de amenințări la adresa securității
  • Discoverable: Browserele identifică automat PWA-urile
  • Re-angajabil: Poate aduce utilizatorii înapoi la aplicație folosind, de exemplu, notificări Push
  • Installable: Pot fi stocate pe ecranul principal la fel ca aplicațiile native, dar fără complicațiile suplimentare ale App Store
  • Linkable: Pot fi partajate în jur sub formă de URL-uri simple

Pentru cititorul acestui articol de blog, cele mai importante funcționalități sunt:

  • Instalabilitate pe ecranul principal
  • Acces la mai multe API-uri native, cum ar fi camera, geolocalizarea, vibrațiile, plățile etc.
  • Suport pentru notificări push
  • Utilizare offline
  • Suport pentru full screen și splash screen

(sursa: postarea de pe blogul lui Alex Russell)

Pentru a concluziona toate cele de mai sus, PWA-urile pot face majoritatea lucrurilor pe care le pot face aplicațiile native, iar diferența dintre ceea ce pot face aplicațiile native și cele web este din ce în ce mai mică.

De ce acum?

Până acum s-ar putea să vă gândiți că toate acestea sună atât de bine încât trebuie să existe o capcană din moment ce PWA-urile nu sunt modul implicit de implementare a aplicațiilor. Da, aveți dreptate. Există o capcană. A existat o lipsă de sprijin pentru tehnologiile care dau putere PWA-urilor în unele medii. Suportul pentru Android există de ceva vreme, începând cu Android 5, ceea ce înseamnă că peste 80% (sursa: statisticile Android ale Google) din dispozitivele Android din întreaga lume suportă tehnologiile necesare pentru implementarea PWA-urilor. Adopția este și mai mare dacă se ia în considerare doar Europa sau America de Nord. Așadar, suportul Android este deja foarte bun.
Din păcate, celălalt jucător cheie care împarte piața telefoanelor mobile nu a fost prea dornic să implementeze tehnologiile (citiți de ce). Suportul pentru iOS a lipsit, împiedicând astfel adoptarea pe scară mai largă a PWA-urilor. Dar, începând cu viitorul iOS 11.3, care va apărea în curând, suportul va fi disponibil și pentru iOS. Din fericire, adoptarea noilor versiuni de iOS este relativ rapidă, astfel încât se poate presupune că un nivel ridicat de suport va fi disponibil în cursul acestui an. Pentru referință, versiunile 10 și 11 reprezintă 93% din toate versiunile de iOS utilizate, conform Apple.
Deși atunci când se vorbește despre PWA-uri se pune adesea accentul pe mediul mobil, acestea funcționează și pentru desktop. La începutul acestei luni a avut loc un anunț important din partea Microsoft care a declarat că PWA-urile sunt acum acceptate de Edge și Windows 10. Chrome și Firefox suportă deja PWA-urile și la fel va face și următoarea versiune a Safari pentru desktop.

Exemplu: Twitter Lite

Cel mai cunoscut exemplu de PWA-uri este versiunea PWA a Twitter numită Twitter Lite (încercați-o cu Android sau desktop la mobile.twitter.com). Twitter a publicat, de asemenea, raționamentul care a stat la baza construirii versiunii PWA. Pentru a evidenția câteva dintre faptele din postare, în comparație cu aplicația lor nativă, dimensiunea versiunii PWA este de numai 1-3%, iar timpul mediu de încărcare este cu 30% mai mic.
Alte exemple bine cunoscute de PWA-uri includ Forbes, Trivago, Washington Post, Telegram, Alibaba și, cel mai recent, Google Maps Go. Există, de asemenea, un director de PWA-uri disponibil.

Concluzii

Se așteaptă ca anul 2018 să fie anul PWA-urilor. Instrumentarul este deja la un nivel foarte bun și tot mai multe PWA-uri apar tot mai des. Odată ce suportul în iOS este foarte disponibil, PWA-urile devin o opțiune realistă pentru aplicațiile native. În cazul în care vă gândiți dacă PWA-urile sunt alegerea potrivită pentru dumneavoastră, reveniți în curând, deoarece voi scrie un ghid cu tema Ar trebui să fac un PWA în loc de o aplicație nativă?
Gofore are deja experiență în PWA-uri și posedă, de asemenea, o experiență vastă în construirea de aplicații web receptive, cu aspect excelent, cu prioritate offline și eficiente. Fie că aveți nevoie de ajutor în ceea ce privește alegerile arhitecturale, designul sau implementarea PWA-urilor, nu ezitați să ne contactați.

CITEȘTE MAI DEPARTE DIN BLOGUL GOFORE

Transformarea agilă în acțiune – Partea 1
Transformarea agilă în acțiune – Partea 2
Ce rost are scalarea Agile

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.