Kratki vodič: Što su progresivni web aplikacije?
Evo kratkog sažetka: Google, Microsoft, Mozilla i druge tvrtke rade na novom, modernom standardu za web aplikacije. Čak i Apple prati i provodi podršku za to. Te aplikacije su web-aplikacije, no ponašaju se više kao izvorne aplikacije. Kao i postojeće web-aplikacije, bit će izravno domaćin na povezanim web-lokacijama. Razvojni programeri mogu ih ažurirati izravno na svom web poslužitelju bez slanja tih ažuriranja na nekoliko različitih trgovina aplikacija, a ista će se aplikacija prikazivati na svim preglednicima i platformama.
Kada instalirate progresivnu web-aplikaciju, dobit ćete početni zaslon, traku zadataka ili prečac na radnoj površini koji pokreće aplikaciju (ovisno o vašoj platformi). Aplikacija će se brzo učitati i obuhvatit će izvanmrežnu podršku, push obavijesti, podršku za sinkronizaciju pozadine i druge moderne pogodnosti.
Te aplikacije također mogu koristiti postojeće web tehnologije za pristup uslugama lokacije, vašoj web-kameri i drugim takvim značajkama koje bismo se normalno povezali s izvornim aplikacijama. Naravno, aplikacije vas moraju tražiti i dobiti vaše dopuštenje prije nego što pristupite tim stvarima.
Tehnička verzija: Kako rade?
Ove će aplikacije dobiti vlastiti prozor i prečac na traci zadataka (na sustavu Windows 10 i sve što pokreće Chrome) ili ikonu na početnom zaslonu (na uređajima Android i drugim pametnim telefonima). Kada ih otvorite, učitavat će se brzo zahvaljujući Cache API-ju i IndexedDB-u koji pohranjuje resurse i podatke aplikacije na vaš uređaj i omogućuje im da rade čak i kada su izvan mreže. Tehnologije kao što su Uslužni djelatnici i push obavijesti omogućit će aplikaciji obavljanje pozadinskih zadataka poput sinkronizacije i slanja obavijesti čak i kada se ne prikazuju, poput nativne aplikacije. API za dohvaćanje čini brže i jednostavnije za aplikaciju da zatraži podatke. Imaju datoteku Manifest web aplikacije koja pruža naziv, ikonu, autor i opis koji se koristi prilikom instalacije aplikacije na početni zaslon ili radnu površinu. Oni su uvijek posluženi putem šifriranog HTTPS-a, što znači da su sigurni i podaci se ne mogu neovlašteno provozati.
Progresivne web aplikacije nisu poput Googleovih paketa za Chrome ili Microsoftovih hostiranih web aplikacija. Oni su od aplikacije trebali "pakirati" kao datoteku i poslati ih u trgovinu aplikacija. Cijela aplikacija živjela je u malom izvanmrežnom paketu, a korisnici su je morali instalirati iz Chrome web-trgovine ili Windows Storea. To su bile i specifične za platformu i funkcionirale su samo na Chromeu ili Windowsu. Razvojni programer morao je promijeniti datoteke izvanmrežne aplikacije i poslati novu verziju u trgovinu aplikacija da bi je ažurirala.
Umjesto toga, PWA-ovi nikada nisu zapakirani u offline datoteku. Kao i tradicionalne web aplikacije koje danas upotrebljavamo, posve su ugostili poslužitelji aplikacije. Ako programer želi ažurirati svoju progresivnu web-aplikaciju, ažuriraju ga točno kao da ažuriraju web-aplikaciju na svojim poslužiteljima. Sve platforme i preglednici koji podržavaju PWA-e mogu koristiti iste Progressive Web Apps.
PWA-ovi mogu se nalaziti u trgovinama aplikacija radi lakšeg otkrivanja i instalacije, ali trgovina aplikacija upućuju samo na poslužitelje web-aplikacije. Čak i ako aplikacija nije kompatibilna s pravilima o sadržaju trgovine aplikacija, korisnici će ga moći pronaći i instalirati izravno iz preglednika.
Zašto ovo vrijedi
Na primjer, kada je ovaj posao završen, Google bi mogao omogućiti usluge kao što su Gmail i Google kalendar da funkcioniraju kao PWA-ovi. To znači da će se pokrenuti kao aplikacije u stilu domovine u sustavu Windows 10 i biti navedeni u Windows Storeu. To bi trebalo dug put riješiti problem aplikacije sustava Windows Store, budući da Google ne želi podržavati Microsoftovu Universal Windows Platformu (UWP). Drugi razvojni programeri koji nisu željeli stvoriti zasebne UWP aplikacije iznenada bi mogli podržati sustav Windows 10 s PWA-ovima u prirodi.
Razvojni programeri imat će lakši način da svoje web aplikacije funkcioniraju snažnije, integriranim putem na širokom rasponu uređaja bez skakanja u bilo koji okvir za pohranu aplikacije. Web-aplikacije koje funkcioniraju svugdje bi se bolje natjecale s nativnim aplikacijama koje funkcioniraju na jednoj platformi. Tvrtka koja ima resurse za izradu jedne aplikacije može izraditi PWA i podržati sve, umjesto stvaranja zasebnih aplikacija za iOS, Android, Windows i web.
Zbog toga što programeri web-aplikacija Manifest datoteka pružaju, tražilice će moći pretražiti web i lako pronaći PWA dostupan na mreži. To će PWA-e lako otkriti, baš kao i web stranice.
Koje su platforme podržane?
S novim ažuriranjem sustava Windows 10, ažuriranjem u travnju 2018, kodnog naziva Redstone 4, koji će biti izdan 30. travnja, Microsoft omogućava podršku za PWA-e. Kao i na drugim platformama, možete krenuti na web stranicu PWA i instalirati ga putem programa Microsoft Edge. Međutim, Microsoft će također unijeti Progressive Web Apps u Trgovini za jednostavnu instalaciju. Programeri mogu popisati svoje aplikacije u Trgovini, ali Microsoft će također koristiti Bing kako bi pronašao dobre PWA-e na webu i automatski ih popisali. Oni će i dalje biti domaćini na svojoj web stranici i ažurirani od strane razvojnog programera, ali Microsoft olakšava pronalaženje i instaliranje. Nećete čak ni trebati otvoriti Edge preglednik za pronalaženje, instaliranje i pokretanje PWA sustava Windows 10. To bi trebalo olakšati skupnu pohranu Windows trgovine, ali izgleda kao loše vijesti za Microsoftovu platformu za UWP aplikacije. Zašto bi mnogi programeri izradili aplikaciju UWP kada bi PWA dobro i funkcionirao na više operacijskih sustava?
U Google Chromeu, bez obzira na to jesu li za Windows, Mac, Linux ili Chrome OS-PWA zamijenili prekinutu platformu "Chrome Apps". Google kaže kako bi podrška za instalaciju računala za PWA trebala stići "sredinom 2018", otprilike. Zatim će ti PWA-ovi raditi s Chromeom na radnoj površini. Ta je značajka već testirana u nestabilnoj razvojnoj verziji preglednika Chrome, pod nazivom Canary.
Na Androidu Google Chrome već podržava instalaciju PWA-a, kao i drugi mobilni preglednici poput Mozilla Firefox, Opera i Samsung preglednika. Google radi na tehnologiji pod nazivom WebAPK koja će PWA-i omogućiti pretvorbu u APK datoteke (datoteke Android aplikacije) i instaliran na uređaj, kao i druge aplikacije. Chromeov voditelj projekta je nagovijestio da se PWA-i mogu dodati iu Trgovinu Play.
Iako Apple nije bio vokalni predlagatelj ili sudionik, sada dodaju značajke PWA pregledniku Safari.
2018 trebao bi biti velika godina za PWA-e, osobito u sustavu Windows 10, gdje bi mogli pomoći Microsoftu da prekine jaz aplikacije i da ima više aplikacija u prirodi.