Ringkasan

Selesai

Aplikasi cuaca yang Anda pertahankan menggunakan layanan cuaca yang baru-baru ini mengumumkan penutupannya. Anda perlu mulai menyelidiki layanan cuaca lainnya. Mengetahui bahwa mengubah layanan berarti bahwa data Anda dapat berubah, Anda ingin menukar dari menggunakan kode di belakang untuk memperbarui UI ke pengikatan data. Dengan cara ini, ketika Anda memutuskan layanan cuaca mana yang akan Anda gunakan, Anda tidak perlu khawatir tentang UI yang terkena dampak.

Pengikatan data yang Anda lakukan dalam latihan mengurangi kode yang diperlukan untuk memperbarui UI saat data berubah. Alih-alih menggunakan penanganan aktivitas tombol untuk berinteraksi dengan kontrol pada UI untuk menyajikan data, Anda pindah ke pengikatan data. Objek data layanan cuaca diatur sebagai konteks pengikatan untuk halaman, dan kontrol pada halaman terikat ke properti objek data tersebut. UI secara otomatis disinkronkan dengan data, terlepas dari bagaimana layanan cuaca diperbarui. Anda juga dapat mengurangi code-behind untuk sakelar Fahrenheit ke Celsius dengan menggunakan pengikatan data dengan pengonversi.

Bayangkan kode di belakang terpengaruh tanpa pengikatan data. Jika Anda mengganti nama kontrol, mengubah satu kontrol ke jenis yang berbeda, atau bahkan menghapus kontrol, kode di belakang Anda tidak akan lagi dikompilasi. Jika layanan cuaca berhenti menyediakan bidang data tertentu, seperti kelembaban, kode Anda akan mengalami crash saat mencoba menyajikannya di UI. Pengguna akan membuat aplikasi tiba-tiba berhenti berfungsi dan mereka tidak akan tahu apa yang terjadi.

Pengikatan data secara otomatis menyinkronkan data dengan UI. Segera setelah data cuaca berubah, apa pun yang terikat padanya juga berubah. Saat jenis properti UI dan jenis objek data tidak cocok, pengonversi mengubah data terikat sehingga disajikan dengan benar oleh UI. Ini mengurangi code-behind yang diperlukan untuk mempertahankan UI. Dari mana data berasal dan bagaimana data dipicu tidak mengkhawatirkan sebagian besar UI Anda. Jika kelembaban tidak lagi disediakan pada objek data, UI yang terikat data tidak akan menunjukkan apa pun untuk label kelembaban alih-alih crash. Itu adalah pengalaman yang jauh lebih baik bagi pengguna Anda alih-alih aplikasi yang crash.