Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mvvmcross'ta yapılandırma konvansiyonu nasıl çalışır?


Mvvmcross'ta yapılandırma konvansiyonu nasıl çalışır?


MVVMCross'ta yapılandırma konvansiyonu

Platformlar arası bir MVVM çerçevesi olan MVVMCross, açık konfigürasyon ihtiyacını azaltarak geliştirme sürecini basitleştirmek için "konfigürasyon üzerine konvansiyon" kavramını kullanır. Bu yaklaşım, geliştiricilerin uygulamalarının alışılmadık yönlerine odaklanmalarını sağlar ve tipik senaryoları ele almak için varsayılan sözleşmelerden yararlanır.

Temel İlkeler

MVVMCROSS'ta, konfigürasyon konusundaki konvansiyon öncelikle görünümlerin ve viewmodellerin nasıl bağlantılı olduğu konusunda uygulanır. Varsayılan olarak, MVVMCross, görüşleri karşılık gelen ViewModels ile ilişkilendirmek için bir adlandırma sözleşmesi kullanır. Örneğin, bir `` TipView` varsa, MVVMCross otomatik olarak onunla eşleştirmek için bir 'TipViewModel' arar. Bu kongre, açık konfigürasyon ihtiyacını ortadan kaldırarak görüşler ve viewModels arasındaki ilişkiyi yönetmeyi kolaylaştırır [11].

Uygulama

1. ViewModel Adlandırma Sözleşmesi: MVVMCross, bir ViewModel'in genellikle görünümün adına "model" ekleyerek adlandırıldığı belirli bir adlandırma kuralını takip eder. Örneğin, `` firstView '' varsayılan olarak [5] [11] ile bağlantılıdır.

2. Otomatik bağlantı: Bu sözleşmeyi kullanırken MVVMCross, uygun ViewModel'i otomatik olarak bulur ve bağlar. Bu, özellikle bu ilişkileri açıkça tanımlamak için genel parametreler kullanmadığınızda yararlıdır [11].

3. Esneklik: MVVMCross basitlik için kurallara dayanırken, aynı zamanda esneklik sağlar. Geliştiriciler, jenerik parametreler veya özel yapılandırmalar kullanarak gerektiğinde bu sözleşmeleri geçersiz kılabilirler. Bu, özellikle karmaşık uygulamalarda, görünümlerin ve görünümlerin nasıl ilişkili olduğu üzerinde daha fazla kontrol sağlar [11].

Faydalar

- Azaltılmış yapılandırma: Geliştiriciler, konvansiyonlardan yararlanarak, uygulama mantığına odaklanarak yapılandırma kodu yazmak için daha az zaman harcarlar.
- Geliştirilmiş okunabilirlik: Tekrarlayan yapılandırma görevleri en aza indirildikçe kod tabanı daha okunabilir hale gelir.
- Basitleştirilmiş bakım: Daha az açık yapılandırma ile uygulamaların bakımı ve güncellenmesi daha kolay hale gelir.

Özelleştirme

MVVMCross, konvansiyonlara büyük ölçüde güvenirken, özelleştirmeyi de destekler. Geliştiriciler, `` App '' ve `setup 'gibi önemli sınıflarda özel mantık uygulayarak varsayılan davranışları geçersiz kılabilirler. Örneğin, IOC konteynerini özelleştirebilir veya ViewModels'in nasıl oluşturulduğunu ve başlatıldığını değiştirebilirsiniz [9].

Özetle, MVVMCross'un kongre konvansiyonu uygulanması, tipik görevleri otomatikleştirerek geliştiricilerin uygulamalarının benzersiz yönlerine odaklanmalarını sağlayarak geliştirme sürecini kolaylaştırır. Bu yaklaşım, karmaşık senaryolar için gereken esnekliği sağlarken üretkenliği artırır ve uygulama bakımını basitleştirir.

Alıntılar:
[1] https://en.wikipedia.org/wiki/convention_over_configuration
[2] https://visualstudiomagazine.com/articles/2018/05/08/build-a-xamarin.forms-application.aspx
[3] https://leaware.com/creating-cross-platform-xamarin-applications-using-the-mvmcross-pramework/
[4] https://learn.microsoft.com/en-us/archive/msdn-magazine/2009/febroarity/patterns-practice-cvention-over-configuration
[5] https://www.codeproject.com/articles/863695/introduction-ton-mvvmcross-platform
[6] https://github.com/mvvmcross/mvmcross-smplesples
[7] https://www.mvvmcross.com/documentation/fundament/viewmodel-lifecycle
[8] https://books.sonatype.com/mvnref-book/reference/installation-sect-ceventionconfiguration.html
[9] https://www.mvvmcross.com/documentation/adved/customizing-using-app-and-setup
[10] https://www.mvvmcross.com/documentation/getting-started/getting-started
[11] https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-note-about-views-and-viewmodels
[12] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview