Monzo mem-build aplikasi yang lebih andal dan berkualitas lebih tinggi dengan Compose

Monzo adalah bank dan penawaran aplikasi layanan keuangan digital. Misi mereka adalah menghasilkan uang bagi semua orang. Sistem desain Monzo mulai menyimpang dari Desain Material jadi mereka menginginkan cara mudah untuk menulis dan memelihara komponen kustom yang terus berkembang—jadi mereka memilih Jetpack Compose.

Apa yang mereka lakukan

Dengan Compose, komponen Desain Material disediakan sebagai lapisan di atas API dasar design-system-agnostic. Monzo menggunakan API dasar untuk membangun library komponennya sendiri, menggunakan komponen Material sebagai referensi. Mereka mulai dengan memigrasikan layar dalam satu waktu, yang sekarang menggunakan Compose di semua layar baru. Sekarang, Compose digunakan dalam produksi, oleh semua engineer Android: “Kami tidak mengalami masalah besar, sehingga kami merasa cukup percaya diri untuk menggunakannya untuk beberapa fitur baru tertentu, dan juga pada semua fitur baru.”

Hasil

Tim Monzo membuat komponen yang memungkinkan mereka dengan mudah membangun komponen layar: “Komponen yang kami sediakan langsung menjadikan pembuatan layar sambil mempelajari Compose pengalaman yang jauh lebih lancar. API berbasis slot adalah pola fantastis yang sangat memudahkan kita untuk membuat komponen yang lebih besar dari sekian banyak elemen penyusun yang kecil.“

Dengan Compose, tim Monzo dapat membuat aplikasi berkualitas lebih tinggi, menambahkan menyenangkan yang sebelumnya tidak dapat mereka akses sprint: “Salah satu contohnya adalah animasi - sangat mudah ditambahkan di Compose sehingga sangat sedikit alasan untuk tidak menganimasikan berbagai hal seperti warna/ukuran/ketinggian perubahan. Animasi 'bagus untuk dimiliki' ini sering kali terlalu sulit bernilai upaya dan kerumitan dalam sistem View.”

Kode mereka sekarang lebih pendek, dan lebih mudah dibaca, dipahami, dan mempertahankan: “Kode deklaratif jauh lebih mudah untuk dipertimbangkan daripada kode yang memanipulasi hierarki UI yang dapat berubah. Lebih mudah juga melacak kode ketika semuanya ditulis dalam bahasa dan sering kali file yang sama, bukan beralih antara Kotlin dan XML. Jangan bantu saya memulai XML tema dan gaya! Tema jauh lebih mudah dipahami di Compose. Tema kita hanya terdiri dari properti yang kita tentukan, nilainya konsisten di perangkat, dan karena ada di Kotlin, sangat mudah untuk menelusuri dan mengikuti IDE.“

Compose memungkinkan tim Monzo menguji aplikasi mereka dengan mudah dan memastikan aplikasi mereka dapat diakses: “Alat ini membantu kami menulis pengujian yang tidak terlalu rapuh, dapat berjalan dengan andal, dan memberikan keyakinan besar bahwa aplikasi kami benar-benar berfungsi di tangan kami pengguna. Pengujian melalui sistem semantik juga memastikan bahwa layar kita setidaknya dapat diakses secara default.”

Memulai

Pelajari Compose lebih lanjut.