Berkenalan dengan Progressive Web Apps (PWA)

Agik Syah 11 November 2016

Berkenalan dengan Progressive Web Apps (PWA)

Ketika kita mengunjungi situs web lewat desktop biasanya akan berjalan sangat lancar dan tanpa masalah, gangguan pun terjadi biasanya hanya ketika jaringan bermasalah, tetapi seringkali banyak masalah muncul ketika kita mengunjungi situs web atau aplikasi web lewat mobile, tanpa notifikasi langsung ke laman menu ketika kita menutup aplikasi web, loading yang terkadang sangat lama pada jaringan yang buruk yang hanya menampilkan layar putih.

Karena hal itu seringkali kita terpaksa harus menginstal aplikasi native, tetapi terlalu banyak aplikasi yang diinstal tentu akan semakin mengurangi ruang penyimpanan, juga kita harus mencarinya terlebih dahulu di apps store sebelum diinstal.

Aplikasi Web Progressif diharapkan mampu untuk mengatasi masalah tersebut. PWA adalah aplikasi web yang berjalan layaknya aplikasi native, notifikasi dan UX seperti aplikasi native.

xkcd-1367

Dengan konsep offline first dan Web APIs baru, aplikasi yang berjalan pada browser tidak akan memunculkan pesan network error atau white screen seperti yang selama ini seringkali kita alami ketika berada pada jaringan yang sangat buruk. Pada PWA, ketika kita meninggalkan browser, dan kembali lagi membuka aplikasi tersebut pada jaringan buruk atau tanpa jaringan sekalipun kita tidak akan kehilangan UI dan data-data terakhir, seperti contohnya applikasi chat blackberry.

screen-shot-2016-02-28-at-9-14-23-am

Service Workers adalah teknologi dibalik PWA yang memberikan fungsionalitas offline, notifikasi, update konten, pergantian konektifitas dan lainnya. Memang belum banyak yang membahas tentang service workers dan bagaimana sebenarnya service workers itu diterapkan, tetapi bila kita mengunjungi developergoogle, bisa dikatakan service workers adalah semacam proxy yang berada ditengah antara aplikasi web, browser, dan jaringan, atau lebih sederhana lagi bisa dianalogikan aplikasi kita akan diatur oleh service workers agar bisa berlajan offline terlebih dahulu, mengembalikan data dari cache jika request ke jaringan gagal.

File service workers sendiri berisi kode javascript yang bisa dikembangkan oleh pengembang untuk menghandle event dan request sesuai dengan kebutuhan. Oh ya, untuk browser yang support service workers sendiri kita bisa lihat kembali disini.

Hmm ... tentunya sangat menarik bagi para pengembang, terutama pengembang yang selama ini mengembangkan aplikasinya dengan teknologi web maupun hybrid, karena ionic sendiri akan menambahkan fitur PWA. Di laman resminya sendiri ionic yakin bahwa web adalah masa depan dari aplikasi, tanpa perlu mengembangkan aplikasi mobile secara terpisah, aplikasi native dan aplikasi web.