Bagikan melalui


XAML

EXtensible Application Markup Language (XAML) adalah bahasa berbasis XML yang merupakan alternatif untuk kode pemrograman untuk membuat instans dan menginisialisasi objek, dan mengatur objek tersebut dalam hierarki induk-anak.

XAML memungkinkan pengembang untuk menentukan antarmuka pengguna di aplikasi .NET Multi-platform App UI (.NET MAUI) menggunakan markup daripada kode. XAML tidak diperlukan dalam aplikasi .NET MAUI, tetapi ini adalah pendekatan yang disarankan untuk mengembangkan UI Anda karena sering lebih praktis, lebih koheren secara visual, dan memiliki dukungan alat. XAML juga sangat cocok untuk digunakan dengan pola Model-View-ViewModel (MVVM), di mana XAML menentukan tampilan yang ditautkan ke kode viewmodel melalui pengikatan data berbasis XAML.

Dalam file XAML, Anda dapat menentukan antarmuka pengguna menggunakan semua tampilan, tata letak, dan halaman .NET MAUI, serta kelas kustom. File XAML dapat dikompilasi atau disematkan dalam paket aplikasi. Bagaimanapun, XAML diurai pada waktu build untuk menemukan objek bernama, dan pada runtime objek yang diwakili oleh XAML dibuat dan diinisialisasi.

XAML memiliki beberapa keunggulan dibandingkan kode yang setara:

  • XAML sering kali lebih succinct dan dapat dibaca daripada kode yang setara.
  • Hierarki induk-anak yang melekat dalam XML memungkinkan XAML untuk meniru dengan kejelasan visual yang lebih besar hierarki induk-anak dari objek antarmuka pengguna.

Ada juga kerugian, sebagian besar terkait dengan batasan yang intrinsik dengan bahasa markup:

  • XAML tidak boleh berisi kode. Semua penanganan aktivitas harus didefinisikan dalam file kode.
  • XAML tidak dapat berisi perulangan untuk pemrosesan berulang. Namun ada kontrol yang menampilkan kumpulan data, seperti ListView dan CollectionView.
  • XAML tidak boleh berisi pemrosesan bersyarah. Namun, pengikatan data dapat mereferensikan pengikatan pengikatan berbasis kode yang secara efektif memungkinkan beberapa pemrosesan kondisional.
  • XAML umumnya tidak dapat membuat instans kelas yang tidak menentukan konstruktor tanpa parameter, meskipun pembatasan ini terkadang dapat diatasi.
  • XAML umumnya tidak dapat memanggil metode, meskipun pembatasan ini terkadang dapat diatasi.

Tidak ada desainer visual untuk memproduksi XAML di aplikasi .NET MAUI. Semua XAML harus ditulis tangan, tetapi Anda dapat menggunakan reload panas XAML untuk melihat UI Anda saat Anda mengeditnya.

XAML pada dasarnya XML, tetapi XAML memiliki beberapa fitur sintaks yang unik. Yang paling penting adalah:

  • Elemen properti
  • Properti terlampir
  • Ekstensi markup

Fitur-fitur ini bukan ekstensi XML. XAML sepenuhnya legal XML. Tetapi fitur sintaks XAML ini menggunakan XML dengan cara yang unik.