Xamarin.Forms XAML Ile ilgili Temel Bilgiler

Download Sample Örneği indirme

EXtensible Application Markup Language (XAML), Microsoft tarafından oluşturulan XML tabanlı bir dildir. Bu dil, nesnelerin örneğini oluşturmak ve başlatmak ve bu nesneleri üst-alt hiyerarşilerde düzenlemek için programlama koduna alternatif olarak kullanılır. XAML, .NET çerçevesi içindeki çeşitli teknolojilere uyarlanmıştır, ancak Windows Presentation Foundation (WPF), Silverlight, Windows Çalışma Zamanı ve Evrensel Windows Platformu (UWP) içindeki kullanıcı arabirimlerinin düzenini tanımlamada en büyük yardımcı programını bulmuştur.

XAML, geliştiricilerin uygulamalarda kod yerine işaretleme kullanarak kullanıcı arabirimleri Xamarin.Forms tanımlamasına olanak tanır. Bir programda Xamarin.Forms XAML hiçbir zaman gerekli değildir, ancak genellikle eşdeğer koddan daha kısa ve görsel olarak daha tutarlıdır ve potansiyel olarak araçlanabilir. XAML, popüler MVVM (Model-View-ViewModel) uygulama mimarisiyle kullanıma uygundur: XAML, XAML tabanlı veri bağlamaları aracılığıyla ViewModel koduna bağlanan Görünümü tanımlar.

Bir XAML dosyası içinde Xamarin.Forms geliştirici, tüm Xamarin.Forms görünümleri, düzenleri ve sayfaların yanı sıra özel sınıfları kullanarak kullanıcı arabirimleri tanımlayabilir. XAML dosyası derlenebilir veya yürütülebilir dosyaya eklenebilir. Her iki durumda da, XAML bilgileri adlandırılmış nesneleri bulmak için derleme zamanında ayrıştırılır ve çalışma zamanında yeniden nesnelerin örneğini oluşturup başlatmak ve bu nesnelerle programlama kodu arasında bağlantı oluşturmak için kullanılır.

XAML'nin eşdeğer koda göre çeşitli avantajları vardır:

  • XAML genellikle eşdeğer koddan daha kısa ve okunabilirdir.
  • XML'deki üst-alt hiyerarşi, XAML'nin kullanıcı arabirimi nesnelerinin üst-alt hiyerarşisini daha net bir şekilde taklit etmesine olanak tanır.
  • XAML, programcılar tarafından kolayca el ile yazılabilir, ancak aynı zamanda araçlanabilir ve görsel tasarım araçları tarafından üretilebilir.

Ayrıca, çoğunlukla işaretleme dillerine yönelik sınırlamalarla ilgili dezavantajlar da vardır:

  • XAML kod içeremez. Tüm olay işleyicileri bir kod dosyasında tanımlanmalıdır.
  • XAML, yinelenen işlemler için döngüler içeremez. (Bununla birlikte, birçok Xamarin.Forms görsel nesne (özellikle de ListView ) koleksiyonundaki ItemsSource nesnelere göre birden çok alt öğe oluşturabilir.)
  • XAML koşullu işleme içeremez (Ancak, veri bağlama bazı koşullu işlemelere etkili bir şekilde izin veren kod tabanlı bağlama dönüştürücüsne başvurabilir.)
  • XAML genellikle parametresiz oluşturucu tanımlamayan sınıfların örneğini oluşturamaz. (Ancak, bazen bu kısıtlamanın bir yolu vardır.)
  • XAML genellikle yöntemleri çağıramaz. (Bu kısıtlama bazen aşılabilir.)

Uygulamalarda XAML Xamarin.Forms oluşturmak için henüz bir görsel tasarımcı yoktur. Tüm XAML'ler elle yazılmalıdır, ancak XAML Çalışırken Yeniden Yükleme Visual Studio 2019'da veya Mac için Visual Studio kullanarak ekran tasarımlarınızı düzenlerken görüntüleyebilirsiniz. XAML'de çok fazla deneyime sahip geliştiriciler bile denemenin ödüllendirici olduğunu bilir.

XAML temelde XML'dir, ancak XAML'nin bazı benzersiz söz dizimi özellikleri vardır. En önemlileri şunlardır:

  • Özellik öğeleri
  • Ekli özellikler
  • İşaretleme uzantıları

Bu özellikler XML uzantıları değildir . XAML tamamen yasal XML'dir. Ancak bu XAML söz dizimi özellikleri XML'i benzersiz şekillerde kullanır. Bunlar, MVVM'yi uygulamak için XAML kullanmaya giriş ile sonuçlanan aşağıdaki makalelerde ayrıntılı olarak ele alınılmıştır.

Gereksinimler

Bu makalede, ile Xamarin.Formsilgili çalışan bir bilgi olduğu varsayılır. Bu makalede AYRıCA XML ad alanı bildirimlerinin kullanımını ve terms öğesi, etiketi ve özniteliğini anlamak da dahil olmak üzere XML hakkında bazı bilgiler olduğu varsayılır.

ve XML hakkında Xamarin.Forms bilgi sahibi olduğunuzda, Bölüm 1'i okumaya başlayın. XAML kullanmaya başlama.

Channel 9 ve YouTube'da daha fazla Xamarin videosu bulun.