MVVMCROSS هو إطار MVVM متعدد المنصات قوي يعزز مشاريع Xamarin الأصلية من خلال تمكين مشاركة طبقات العرض التقديمي ومنطق واجهة المستخدم عبر منصات مختلفة. فيما يلي بعض حالات الاستخدام الشائعة لـ MVVMcross في مشاريع Xamarin الأصلية:
1. إعادة استخدام رمز المنصة **
يتيح MVVMcross للمطورين زيادة إعادة استخدام التعليمات البرمجية عن طريق وضع عوامل العرض ومنطق الأعمال في مكتبة فئة محمولة (PCL). يمكن الرجوع إلى هذا PCL عبر مشاريع متعددة خاصة بالمنصة ، مثل Xamarin.android و Xamarin.ios ، مما يضمن أن المنطق الأساسي يظل ثابتًا بينما يمكن تخصيص واجهة المستخدم لكل منصة [1] [2].2. تنفيذ نمط MVVM **
يسهل MVVMCROSS تنفيذ نمط عرض النموذج (MVVM) ، وهو مفيد للحفاظ على فصل واضح بين المخاوف بين واجهة المستخدم ومنطق العمل. يساعد هذا النمط في إنشاء تطبيقات مزدوجة بشكل فضفاض ، مما يجعلها أسهل في الاختبار والحفاظ على [3] [5].3. ربط البيانات والتنقل **
يوفر MVVMCross إمكانات قوية لربط البيانات ، مما يسمح للعيش بالربط بـ ViewModels بسلاسة. تدعم هذه الميزة أنماط ومحولات الربط المختلفة ، مما يعزز مرونة واجهة المستخدم في التطبيق. بالإضافة إلى ذلك ، يتضمن MVVMCROSS نظام ملاحة يبسط الانتقال بين طرق العرض المختلفة داخل التطبيق [2] [5].4. حقن التبعية والمكونات الإضافية **
يوفر MVVMCROSS حاوية حقن التبعية (DI) تتيح للمطورين تسجيل وحل الخدمات الخاصة بالمنصة من PCL. هذه الميزة أمر بالغ الأهمية لدمج الوظائف الخاصة بالنظام الأساسي دون تكرار رمز. علاوة على ذلك ، يدعم MVVMCross مجموعة واسعة من الإضافات للوظائف الشائعة مثل عمليات قاعدة البيانات ، واتصال الشبكة ، وأكثر من ذلك ، والتي يمكن دمجها بسهولة في المشاريع عبر حزم nuget [1] [3].5. تخصيص واجهة المستخدم الخاصة بالمنصة **
على الرغم من أن xamarin.forms يقيد تخصيص واجهة المستخدم عبر الأنظمة الأساسية ، فإن MVVMcross مع Xamarin Native يتيح للمطورين إنشاء واجهة مستخدم خاصة منصة. هذا مفيد بشكل خاص عندما يتطلب التطبيق مظهرًا محليًا وشعورًا على كل منصة. يضمن MVVMCross أنه على الرغم من تطبيقات واجهة المستخدم المختلفة ، يظل منطق الأعمال الأساسي مشتركًا ومتسقًا [1] [4].6. اختبار الوحدة وكفاءة التطوير **
من خلال فصل منطق العمل إلى PCL ، يجعل MVVMCross من السهل كتابة اختبارات الوحدة للمنطق الأساسي للتطبيق. يسرع هذا الفصل أيضًا ، حيث لا تتطلب التغييرات في منطق العمل تعديلات على رمز واجهة المستخدم الخاصة بالمنصة [5].باختصار ، MVVMCROSS هي أداة متعددة الاستخدامات لمشاريع Xamarin الأصلية ، حيث تقدم نهجًا منظمًا لتطوير المنصات عبر المنصات مع الحفاظ على المرونة لتخصيص واجهة المستخدم لكل منصة. ميزاتها مثل دعم نمط MVVM ، وربط البيانات ، وحقن التبعية ، والنظام الإيكولوجي للمكون الإضافي الواسع يجعلها خيارًا مثاليًا للتطبيقات المعقدة عبر الأنظمة الأساسية.
الاستشهادات:[1]
[2] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvvm-apps-with-xamarin-and-mvvmcross
[3] https://dev.to/christian1006/creating-cross-platform-xamarin-applications-use-the-mvvmcross-framework-2920
[4] https://canbilgin.wordpress.com/tag/mvvmcross/
[5] https://www.mvvmcross.com/documentation/getting-started/getting-started
[6] https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-xamarin-forms-version
[7] https://stackoverflow.com/questions/32220007/what-does-mvvmcross-do-tat-xamarin-doesnt-already
[8] https://stackoverflow.com/questions/38450264/xamarin-forms-vs-xamarin-mvvmcross