Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mvvmcross


Mvvmcross


MVVMCROSS adalah kerangka kerja MVVM (Model-View-ViewModel) yang kuat yang dirancang untuk pengembangan aplikasi lintas platform dalam ekosistem .NET. Ini mendukung berbagai platform, termasuk Xamarin.ios, Xamarin.android, Xamarin.Forms, Universal Windows Platform (UWP), Windows Presentation Foundation (WPF), dan lainnya [1] [3] [4]. Berikut gambaran fitur utamanya dan cara kerjanya:

fitur utama mvvmcross

- Pola Arsitektur MVVM: MVVMCross mengimplementasikan pola MVVM, yang memisahkan logika aplikasi menjadi tiga komponen yang saling berhubungan: model, tampilan, dan viewmodel [3].
-Sistem Navigasi: Ini menyediakan sistem navigasi yang kuat, memungkinkan manajemen transisi viewmodel-to-viewModel yang mudah [2] [4].
- Ikatan data: MVVMCROSS termasuk mesin pengikat yang dapat disesuaikan, memungkinkan pengembang untuk membuat binding khusus untuk tampilan mereka [4].
- inversi kontrol (IOC) dan injeksi ketergantungan: kerangka kerja mendukung IOC melalui injeksi ketergantungan, memfasilitasi kopling longgar dan pengujian [3] [4].
-Dukungan khusus platform: Ini menawarkan dukungan luas untuk fitur dan fungsionalitas khusus platform [3].
- Plugin dan Ekstensi: MVVMCROSS mencakup kerangka kerja plugin yang memungkinkan pengembang untuk dengan mudah mengintegrasikan fungsi tambahan seperti GPS, lokalisasi, dan banyak lagi [4].

Bagaimana cara kerja mvvmcross

Proyek Core dan UI

Aplikasi MVVMCross biasanya terdiri dari dua bagian utama:

- Proyek inti: Ini berisi logika bisnis, viewmodels, layanan, dan model. Biasanya diimplementasikan sebagai perpustakaan standar .NET untuk memastikan kompatibilitas lintas-platform [2].
- Proyek UI: Setiap platform (mis., IOS, Android) memiliki proyek UI sendiri, yang mencakup kode spesifik platform dan tampilan yang berinteraksi dengan proyek inti [2].

Objek dan inisialisasi utama

- Kelas aplikasi: Terletak di proyek inti, kelas ini bertanggung jawab untuk mendaftarkan objek khusus dengan wadah IOC dan menginisialisasi logika aplikasi [2].
- Objek AppStart: Opsional, objek ini menentukan ViewModel mana yang akan disajikan terlebih dahulu selama startup aplikasi [2].
- Kelas Pengaturan: Ditemukan di setiap proyek platform, kelas ini menginisialisasi layanan khusus platform MVVMCross dan register [2].

Proses inisialisasi ###

1. Startup Platform: Proses startup platform asli dimulai.
2. Pengaturan MVVMCROSS: Kelas `Pengaturan` menginisialisasi kerangka kerja dalam dua langkah:` initializePrimary` (utas utama) dan `initializeCondary` (latar belakang utas) [2].
3. Inisialisasi Aplikasi: Kelas `App` diinisialisasi, dan menyediakan objek` appstart` untuk mengelola langkah navigasi pertama [2].

Memulai dengan MVVMCross

Untuk memulai proyek MVVMCross baru, pengembang dapat menggunakan templat seperti MVXScaffolding. Kerangka kerja ini tersedia melalui paket Nuget, yang harus diinstal dalam proyek inti dan platform khusus [3] [4]. Untuk panduan dan dokumentasi terperinci, situs web resmi MVVMCROSS dan Github Repository adalah sumber daya yang sangat baik [1] [4].

Kutipan:
[1] https://www.mvvmcross.com
[2] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[3] https://www.mvvmcross.com/documentation/getting-started/getting-started
[4] https://github.com/mvvmcross/mvvmcross
[5] https://www.mvvmcross.com/blog/
[6] https://github.com/mvvmcross
[7] https://x.com/mvvmcross?lang=en
[8] https://www.nuget.org/profiles/mvvmcross