Kamu berada dalam single page application apabila dalam sebuah aplikasi atau website memiliki fitur komplit. Komplit dalam hal ini dimaksud ketika semua fitur dari aplikasi tersebut dapat terlihat jelas di laman yang sama.
Aplikasi jenis ini biasanya dikenal sebagai aplikasi yang compact dan cenderung ringan. Akibatnya, aplikasi ini menghasilkan peningkatan kinerja dan pengalaman pengguna yang lebih dinamis.
Apa Itu Single Page Application?
Single page application (SPA) menurut MDN Web Docs adalah implementasi aplikasi web yang memuat hanya satu dokumen web. Dokumen ini memperbarui konten isi dari dokumen tunggal itu melalui JavaScript API seperti XMLHttpRequest dan Fetch ketika konten yang berbeda akan ditampilkan.
Facebook, Google Maps, Gmail, Twitter, dan Google Drive adalah beberapa contoh aplikasi yang menggunakan implementasi web seperti ini. Angular dan React adalah framework yang banyak digunakan developer untuk membuat SPA secara efisien dan fasih.
Ini karena kumpulan komponen dari framework tersebut dapat digunakan kembali. Komponen tersebut telah dikontribusikan oleh banyak developer yang mengikuti serangkaian aturan bangunan yang ditentukan.
Keunggulan dari Single Page Application
Menurut Bloomreach, ada banyak manfaat penggunaan SPA. Mulai dari peningkatan kinerja dan konsistensi aplikasi, serta pengurangan waktu pengembangan dan biaya infrastruktur. Berikut beberapa keunggulannya.
1. Waktu loading situs jauh lebih cepat
Setelah pemuatan halaman awal, server SPA tidak mengirimkan HTML lagi kepadamu. Kamu telah men-download-nya di awal. Kemudian, saat kamu mengklik sesuatu, SPA akan mengirimkan kembali permintaan untuk data dan markup. Selanjutnya, server mengambil kembali bahan mentah yang dibutuhkan.
Setelah itu, browser akan mengambilnya dan membuat UI yang diperbarui. Proses ini merupakan bagian yang saling bertukar tanpa perlu melakukan refresh pada halaman. Pertukaran cepat ini membuat SPA sangat berguna pada halaman yang sangat dinavigasi dan menggunakan format yang berulang.
2. Tidak ada query tambahan ke server
Server pada single page application tidak perlu menghabiskan waktu dan energi untuk memuat penuh halaman. Sehingga, SPA menurunkan dampaknya kepada server secara keseluruhan. Artinya, kamu dapat menghemat biaya dengan menggunakan lebih sedikit server untuk jumlah lalu lintas yang sama.
3. Front-end yang cepat dan responsif
Seiring dengan waktu kinerja yang lebih cepat, single page application juga memungkinkan developer membangun front-end yang jauh lebih cepat. Hal ini disebabkan arsitektur SPA yang terpisah antara layanan back-end dan tampilan front-end.
Dengan penyiapan terpisah, kamu dapat membangun, menerapkan, dan bereksperimen dengan front-end sepenuhnya secara independen dari teknologi back-end yang mendasarinya. Kamu bisa mendesain tampilan dan nuansa pengalaman pengguna (user experience) yang diinginkan, lalu menarik konten, data, dan fungsionalitas melalui layanan tersebut.
4. Meningkatkan pengalaman pengguna (user experience)
Single page application memiliki banyak fungsi yang dibangun sebagai layanan modular (arsitektur layanan mikro) yang dapat diperbarui secara independen. Sehingga, kamu bisa lebih mudah untuk bereksperimen dengan bagaimana aplikasi tersebut ditampilkan dan digunakan.
Framework SPA sangat bagus untuk bereksperimen untuk menciptakan pengalaman pengguna yang menarik, dinamis, dan bahkan animasi.
Kelemahan dari Single Page Application
SPA memberikan beban yang lebih signifikan pada browser. Misalnya, jika pengguna memiliki perangkat berdaya rendah, mereka akan memiliki pengalaman aplikasi yang buruk dalam hal kecepatan. Kelemahan lainnya muncul ketika kamu menggunakan JavaScript. Kamu harus memastikan tidak ada kebocoran memori. Ini karena aplikasi dapat berjalan untuk waktu yang lama, berbeda dengan MPA, yang umur halaman dihitung dalam beberapa menit.
Kamu perlu memastikan SPA tidak menggunakan lebih banyak memori daripada yang dibutuhkan. Jika tidak, kesenangan dari halaman yang memuat dengan cepat akan dihancurkan oleh lambannya memori yang tidak tersedia di perangkat pengguna. Satu lagi kelemahannya adalah pengguna dapat menonaktifkannya di perangkat mereka. Sehingga, kamu perlu memikirkan cara tambahan tentang bagaimana mereka dapat mengakses informasi di aplikasi tanpa JavaScript.
Masalah keamanan lainnya adalah privasi data sensitif. Pemuatan halaman awal tidak boleh berisi informasi apa pun yang seharusnya tidak tersedia untuk semua pengguna. Oleh karena itu, jika kamu ingin membangun single page application, pastikan kamu telah melakukan tindakan pencegahan yang diperlukan agar hal ini tidak terjadi.
Komentar
Posting Komentar