07 Wrz

Progresywne aplikacje internetowe (PWA) – przyszłość nowoczesnej sieci?

W dzisiejszych czasach progresywne aplikacje internetowe (PWA) to topowy temat, głównie ze względu na niesamowitą użyteczność i wyjątkowe wrażenia użytkownika. Dzięki połączonym funkcjom stron internetowych i natywnych aplikacji, PWA stają się normą dla aplikacji internetowych na wiele urządzeń, pozwalając programistom tworzyć szybko ładujące się dynamiczne aplikacje bez użycia hybrydowych frameworków.

Wierzę, że progresywne aplikacje internetowe są przyszłością stron internetowych. W dalszej części opiszę zalety i przypadki użycia, aby przedstawić cały obraz. Przejdźmy do tego.

Co to są progresywne aplikacje internetowe?

Termin “progresywne aplikacje internetowe” został po raz pierwszy ukuty przez Alexa Rusell’a (programistę Google Chrome) i Frances Berriman (projektanta). Alex podzielił się swoim pomysłem na temat progresywnych aplikacji internetowych, które “te aplikacje nie są pakowane i wdrażane w sklepach, to tylko witryny, które pobierały wszystkie odpowiednie witaminy”.

“Witryny, które chcą wysyłać Ci powiadomienia lub wyświetlać je na ekranie głównym, muszą to robić z czasem, ponieważ ich używasz coraz więcej. Stopniowo stają się “aplikacjami”, napisał Alex o aprobacie PWA. Na koniec stwierdził: “te aplikacje mogą zapewnić jeszcze lepszą obsługę niż tradycyjne aplikacje internetowe”.
Pokedex.org is a know PWA

Aplikacje internetowe, a progresywne aplikacje internetowe

Aplikacje internetowe lub tradycyjne aplikacje internetowe to aplikacje działające po stronie klienta, które działają bezpośrednio w przeglądarce. Choć są one lepsze niż strony internetowe, ale mają swoje problemy. Jeśli nie wiesz, jaka jest różnica między aplikacjami i stronami internetowymi, aplikacje internetowe różnią się od witryn internetowych, ponieważ aplikacje internetowe wyglądają jak natywne aplikacje.

Mówiąc to, progresywne aplikacje internetowe są następną generacją aplikacji internetowych, które działają bardziej jak aplikacje natywne, wykorzystując natywne ulepszenia urządzenia. Na przykład progresywne aplikacje internetowe mogą korzystać z natywnych funkcji, takich jak kamera, sygnały nawigacyjne itp., Wraz z takimi funkcjami, jak pamięć podręczna trybu offline, powiadomienia push itp.

Dlaczego potrzebujemy progresywnych aplikacji internetowych?

Mamy natywne aplikacje, z jednej strony, które są niewiarygodnie szybkie i niezawodne, nawet w najgorszych sytuacjach, takich jak wolne lub brak łączności. Ale z drugiej strony mamy witryny i aplikacje internetowe, które działają wolno i nie działają dobrze w żadnych warunkach sieciowych. Dlatego większość ludzi woli natywne aplikacje.

Websites dont't work without internet

Strony internetowe nie działają bez internetu

Przyspieszone strony mobilne (AMP), projekt zachęcony przez Google, rozpoczęły się w 2016 roku, aby rozwiązać problemy z powolnymi połączeniami, w szczególności na smartfonach i zapewnić użytkownikom mobilnym większą wygodę użytkowania. Jednak AMP nie rozwiązuje problemów sieciowych. Ponadto, nie przyspiesza to czasu ładowania tak samo jak aplikacji natywnych, i znowu ma kilka ograniczeń, aby osiągnąć tę prędkość.

Dlatego potrzebujemy progresywnych aplikacji internetowych. PWA zapewniają najlepszą możliwą obsługę w powolnych lub pozbawionych warunków sieciowych. Na przykład PWA może wyświetlać ekran postępu podczas ładowania zawartości lub ekranu powitalnego, gdy nie ma odpowiednio połączenia z siecią.

Dlaczego progresywne aplikacje internetowe mają sens?

Zgodnie z raportem comScore z 2017 r. Dotyczącym amerykańskiej aplikacji mobilnej użytkownicy aplikacji spędzają prawie 77% czasu w trzech najpopularniejszych aplikacjach, podczas gdy pozostałe aplikacje pozostają bezczynne, ale nadal blokują zasoby systemowe, w tym pamięć. Co więcej, podziela również to, że 50 procent użytkowników pobiera zero aplikacji miesięcznie. Fakt ten sugeruje, że użytkownicy wahają się instalować nowe aplikacje, a zatem PWA ma przewagę.

Uważam, że ludzie najczęściej wybierają witryny na komputerach stacjonarnych, ale preferują aplikacje na urządzenia mobilne (oczywiście aplikacje natywne). Powodem jest to, że komputery oferują o wiele więcej zasobów sieciowych niż smartfony, a aplikacje zużywają mniej zasobów niż ich odpowiedniki. Są również szybkie i niezawodne.

Co więcej, aplikacje natywne kosztują o wiele więcej niż witryny internetowe – od pięciu do dziesięciu razy lub więcej w zależności od rodzaju projektu. Ich koszt może się również zwiększyć, jeśli istnieje potrzeba opracowania natywnych aplikacji dla wielu platform (np. Android i iOS) z różnymi bazami kodów. Jednak PWA może pomóc zminimalizować tak wysokie koszty rozwoju, dzięki obsłudze różnych platform.

Progresywne funkcje aplikacji internetowych

Progresywne aplikacje internetowe mają wiele bezpośrednich funkcji, które odróżniają je od ich prostszych odpowiedników, tj. Aplikacji internetowych (lub prostszych – stron internetowych):

  • Responsywny. Pracuj na wszystkich urządzeniach o dowolnym rozmiarze ekranu.
  • Offline. Załaduj także w powolnej lub zerowej sieci.
  • Wrażenie podobne do aplikacji. Przeglądaj i interakcji jak natywna aplikacja.
  • Aktualny. Aktualizuj na własną rękę, w sposób przejrzysty.
  • Bezpieczne. Użyj HTTPS, aby załadować zasoby strony.
  • Wykrywalny. Dostępność treści dla wyszukiwarek.
  • Ponowne włączenie. Ponownie zaangażuj się, powiedz za pomocą powiadomień.
  • Można zainstalować. Można umieścić na ekranie głównym.
  • Linkable. Ładuj strony aplikacji, ale z adresami URL.

Interesujące jest to, że Progressive Web Apps nie tylko wygląda i czuje się jak aplikacje natywne, ale także ma dostęp do natywnych funkcji urządzenia. Oznacza to, że urządzenie PWA może wykonać zdjęcie użytkownika za pomocą aparatu urządzenia. Muszę jednak udostępnić, że nie ma dostępu do ograniczonych funkcji, takich jak lokalizacja, telefon czy SMS.

Tworzenie progresywnych aplikacji internetowych?

Google udostępnia “Progressive Web App Checklist” – szczegółową listę, która pomoże początkującym tworzyć Progressive Web Apps. Ta lista bez przewodnika udostępnia niezbędne funkcje do tworzenia PWA – “Baseline PWA” i “Przykładowy PWA”; pierwszy wymienia kluczowe rzeczy dla podstawowej aplikacji, a drugi dla zaawansowanej aplikacji.

Ponadto istnieją różne narzędzia pomocne w budowaniu PWA. Na przykład Lighthouse to bezpłatne narzędzie o otwartym kodzie źródłowym do ulepszania strony internetowej, w tym kontroli jakości pod kątem dostępności, wydajności i funkcji PWA. Innym ciekawym narzędziem jest Workbox, który pomaga tworzyć aplikacje z doświadczeniem w trybie offline.

Czy progresywne aplikacje internetowe są przyszłością?

Chociaż progresywne aplikacje internetowe mogą nie rozwiązać wszystkich problemów z naszą aplikacją lub zastąpić natywne aplikacje w niedalekiej przyszłości, ale uważam, że odegrają one istotną rolę, dzięki swoim zaletom, które znacznie przekraczają jej ograniczenia. I prawie na każdej dużej platformie zaczynającej wspierać PWA, nie wszędzie daleko do zobaczenia.

Firma Apple wprowadziła funkcje PWA (Web API) w przeglądarce Safari 11.1, w tym Beacon API, Service Workers, Manifest Web App itp .; w ten sposób wprowadzanie PWA do iOS wkrótce. Google ma już obsługiwane PWA w Chrome na Androida i planuje także udostępnić je na platformach komputerowych. Firma Microsoft dodała również obsługę PWA w Microsoft Edge i będzie je również wyświetlać w Microsoft Store.

ŹRÓDŁO