Jak jste se dostali k tomuto příspěvku na blogu, pravděpodobně jste někde zaslechli termín PWA. To je dobře – PWA jsou tím, kvůli čemu se na rok 2018 bude vzpomínat, takže jste přímo na špici. Jak vzrušující! V tomto příspěvku na blogu vám vysvětlím, co tento termín vlastně znamená a proč byste se o něj měli zajímat.
(zdroj: stránky Google Developer)
Co je to PWA?
PWA je zkratka pro progresivní webovou aplikaci. Prozkoumejme ji rozdělením na dvě části. Poslední dvě slova („webová aplikace“) mluví sama za sebe. PWA jsou webové aplikace. Webová aplikace zde jednoduše znamená aplikaci, která běží jako webová stránka, jako například Twitter. První část pojmu – progresivní – znamená, že uživatelské prostředí je postupně vylepšováno na základě možností prohlížeče. V podstatě to znamená, že webová aplikace funguje dobře ve starších prohlížečích, ale může využívat novější technologie ke zlepšení zážitku, pokud uživatel používá prohlížeč, který je podporuje. Zní to jednoduše, že? Odkud se tedy tento termín vzal?“
Progresivní znamená, že uživatelský zážitek je vylepšován postupně na základě schopností prohlížeče
Termín zavedl inženýr prohlížeče Google Chrome Alex Russell ve svém příspěvku na blogu v roce 2015. Od té doby společnost Google aktivně propaguje jejich používání a poskytuje mnoho zdrojů k tomuto tématu, například web, který je podrobněji vysvětluje.
Při prezentacích týkajících se PWA se v tomto bodě vždy setkávám se stejným zmatkem. „Takže… Je to technologie? Je to standard? Je to něco, co vlastní/patentuje Google?“ „Ne. Ne, nic z toho. Je to prostě termín, který popisuje specifický způsob navrhování a vytváření aplikací. Dále se pokusíme pochopit, co to je, tím, že si projdeme charakteristiky.
Tady je původních 9 charakteristik PWA od Alexe Russella s vysvětlením, co v tomto kontextu znamenají:
- Responsivní: Stránka vypadá dobře na různých velikostech obrazovky (např. telefon, tablet, stolní počítač)
- Nezávislost na připojení: Funguje i bez připojení k internetu
- Interakce podobné aplikacím: Vzhled nativní aplikace
- Svěží: Vždy aktuální
- Bezpečný: Využití zabezpečeného připojení ke zmírnění různých typů bezpečnostních hrozeb
- Odhalitelný: Prohlížeče automaticky identifikují PWA
- Odhalitelné: Může uživatele přivést zpět do aplikace například pomocí oznámení Push
- Instalovatelné: Lze je ukládat na domovskou obrazovku stejně jako nativní aplikace, ale bez dalších potíží spojených s obchodem App Store
- Propojitelné: Pro čtenáře tohoto příspěvku jsou nejdůležitější funkce:
- Instalace na domovskou obrazovku
- Přístup k mnoha nativním rozhraním API, jako je fotoaparát, geolokace, vibrace, platby atd.
- Podpora push notifikací
- Offline použití
- Podpora celé obrazovky a úvodní obrazovky
(zdroj: příspěvek na blogu Alexe Russella)
Závěrem všeho výše uvedeného lze říci, že PWA umí většinu věcí, které umí nativní aplikace, a rozdíl mezi tím, co umí nativní a webové aplikace, se neustále zmenšuje.
Proč právě teď?“
Možná si teď říkáte, že to všechno zní tak dobře, že v tom musí být nějaký háček, protože PWA nejsou výchozím způsobem implementace aplikací. Ano, máte pravdu. Nějaký háček tu je. V některých prostředích chybí podpora technologií posilujících PWA. Podpora systému Android existuje již delší dobu, počínaje systémem Android 5, což znamená, že více než 80 % (zdroj: statistiky systému Android společnosti Google) zařízení se systémem Android na celém světě podporuje technologie potřebné k implementaci PWA. Přijetí je ještě větší, pokud vezmeme v úvahu pouze Evropu nebo Severní Ameriku. Podpora systému Android je tedy již opravdu dobrá.
Naneštěstí druhý klíčový hráč, který se dělí o trh s mobilními telefony, se do implementace těchto technologií příliš nehrnul (přečtěte si proč). Podpora systému iOS chybí, což brání širšímu rozšíření PWA. Od brzy chystané verze iOS 11.3 však bude podpora dostupná i pro iOS. Naštěstí je adopce nových verzí iOS poměrně rychlá, takže lze předpokládat, že vysoká úroveň podpory bude k dispozici ještě letos. Pro srovnání, verze 10 a 11 představují podle společnosti Apple 93 % všech používaných verzí systému iOS.
Přestože se při hovoru o PWA často soustředíme na mobilní prostředí, fungují i pro desktop. Začátkem tohoto měsíce došlo k důležitému oznámení společnosti Microsoft, v němž se uvádí, že PWA jsou nyní podporovány prohlížečem Edge a systémem Windows 10. Chrome a Firefox již PWA podporují a stejně tak příští verze desktopového Safari.Příklad: Twitter Lite
Nejznámějším příkladem PWA je verze PWA společnosti Twitter nazvaná Twitter Lite (vyzkoušejte si ji v systému Android nebo na počítači na adrese mobile.twitter.com). Twitter také zveřejnil své důvody, které vedly k vytvoření verze PWA. Vyzdvihněme některá fakta z příspěvku: ve srovnání s jejich nativní aplikací je velikost verze PWA pouze 1-3 % a průměrná doba načítání je o 30 % kratší.
Dalšími známými příklady PWA jsou Forbes, Trivago, Washington Post, Telegram, Alibaba a nejnověji Google Maps Go. K dispozici je také adresář PWA.Závěry
Očekává se, že rok 2018 bude rokem PWA. Nástroje jsou již na skvělé úrovni a neustále se objevují další a další PWA. Jakmile bude podpora v systému iOS vysoce dostupná, stanou se PWA reálnou možností pro nativní aplikace. V případě, že zvažujete, zda jsou pro vás PWA tou správnou volbou, podívejte se brzy zpět, protože napíšu průvodce na téma Měl bych udělat PWA místo nativní aplikace?“
Gofore již má zkušenosti s PWA a také disponuje rozsáhlými zkušenostmi s vytvářením responzivních, skvěle vypadajících, offline-first a efektivních webových aplikací. Ať už potřebujete pomoci s výběrem architektury, návrhem nebo implementací PWA, neváhejte se na nás obrátit.DALŠÍ ČTENÍ Z BLOGU GOFORE
Agile Transformation in Action – Part 1
Agile Transformation in Action – Part 2
Co je smyslem škálování Agile