Apa yang telah berfungsi dengan baik untuk aplikasi mini
Dalam bab ini, saya ingin melihat pelajaran yang saya dapat dari riset aplikasi mini dari sudut pandang developer web, atau menjawab pertanyaan tentang apa artinya mengembangkan aplikasi mini dengan cara itu.
Komponen
Daripada menciptakan kembali roda dan membuat developer mem-build implementasi lain dari paradigma UI umum seperti tab, akordeon, carousel, dll., aplikasi mini hanya dilengkapi dengan pilihan komponen default yang dapat diperluas jika Anda membutuhkan lebih banyak. Di web, ada juga banyak opsi, beberapa di antaranya telah saya cantumkan dalam bab tentang komponen aplikasi mini. Dalam kondisi ideal, library komponen di web dibangun sedemikian rupa sehingga Anda dapat mencampurnya dengan bebas. Dalam praktiknya, sering kali, ada ketergantungan tertentu mengenai sistem desain yang harus Anda ikuti saat menggunakan komponen, atau library komponen didistribusikan sedemikian rupa hingga semuanya atau tidak sama sekali, tetapi tidak ada komponen individual yang dapat ditambahkan dengan mudah ke project. Namun, ada komponen atomik yang dapat Anda gunakan secara terpisah, atau library seperti komponen generik yang sengaja tidak ditata gayanya. Menemukan {i>tool <i}yang digunakan adalah ide yang bagus.
Model-view-model
Pola arsitektur model–view-viewmodel (MVVM)—yang memfasilitasi pemisahan pengembangan antarmuka pengguna grafis (tampilan) melalui bahasa markup dari pengembangan logika back-end (model)—berarti tampilan tidak bergantung pada platform model tertentu. Meskipun ada beberapa kekurangan yang didokumentasikan, pola ini secara umum berfungsi sangat baik untuk aplikasi dengan kompleksitas aplikasi mini. Warna ini dapat bersinar terutama dengan library template yang lengkap (lihat bab berikutnya).
Pemikiran {i>page-wise<i}
Proses debug aplikasi mini menunjukkan bahwa aplikasi tersebut pada dasarnya adalah aplikasi multi-halaman (MPA). Hal ini memiliki banyak keuntungan, misalnya, memungkinkan pemilihan rute yang mudah dan gaya visual per halaman yang bebas konflik. Orang-orang telah berhasil menerapkan arsitektur MPA ke Progressive Web App. Berpikir di halaman juga membantu mengelola sumber daya seperti file CSS dan JavaScript setiap halaman, dan aset lain seperti gambar dan video. Yang terpenting, mem-build dengan cara ini berarti Anda mendapatkan pemisahan kode berbasis rute secara gratis jika Anda tidak memuat yang lain. Dalam hal ini, setiap halaman berdasarkan definisi hanya memuat apa yang diperlukan agar berfungsi.
Proses build
Aplikasi mini tidak memiliki proses build yang terlihat. Di web, alat build modern seperti Snowpack memanfaatkan sistem modul bawaan JavaScript (dikenal sebagai ESM) untuk menghindari pekerjaan yang tidak perlu dan tetap cepat, terlepas dari seberapa besar project berkembang. Meskipun masih dalam tahap awal untuk teknologi seperti Paket Web, teknologi ini dapat ditambahkan dengan mudah ke proses build.
Kemampuan yang canggih
Platform web telah mendapatkan banyak kemampuan baru baru-baru ini. Akses ke perangkat melalui Bluetooth, USB, HID, serial, dan NFC kini dapat dilakukan. Saat aplikasi mini berjalan di WebView dan bergantung pada jembatan JavaScript, di web, kemampuan canggih ini tersedia secara langsung, sehingga Anda tidak memprogram menggunakan API yang disediakan oleh bridge JavaScript, tetapi di API browser tanpa aktor perantara.
Ucapan terima kasih
Artikel ini ditinjau oleh Joe Medley, Kayce Basques, Milica Mihajlija, Alan Kent, dan Keith Gu.