
Solusi komponen yang dibangun berdasarkan kerangka kerja MVVMFrame sebagai Perpustakaan Dasar Inti
Diagram arsitektur komponen MVVMFrameComponent dilapisi sebagai berikut:

Karena perpustakaan dasar komponen inti didasarkan pada MVVMFrame , diagram arsitektur MVVMFrame diposting di sini sebagai berikut:

Ringkasan komponen yang sederhana adalah untuk membagi aplikasi atau modul lengkap menjadi beberapa submodul, sehingga setiap submodule dapat dikompilasi dan dijalankan secara independen, atau digabungkan ke dalam aplikasi host sebagai perpustakaan untuk membentuk aplikasi lengkap untuk kompilasi dan berjalan. Setiap modul dapat tidak tergantung dan dapat berinteraksi satu sama lain.
Saat proyek berlalu, tuntutan terus berubah dan beralih. Setiap modul juga akan menjadi relatif kompleks. Kesulitan pemeliharaan juga akan meningkat sesuai, dan seiring waktu, ini dapat menyebabkan beberapa masalah baru. Saat ini, kita membutuhkan komponen.
Ketika suatu aplikasi menggunakan solusi pengembangan berbasis komponen, keunggulan utamanya adalah: Setelah pemisahan berbasis komponen dari setiap modul, setiap submodule dapat dikompilasi dan dijalankan secara mandiri, sehingga ketika mengembangkan dan menyetel modul tertentu, kecepatan kompilasi dan efisiensi pengembangan dapat sangat ditingkatkan. Ketika pengembangan multi-orang, setiap orang bertanggung jawab atas modul independen, yang lebih kondusif untuk pengembangan kolaboratif tim multi-orang. Selain itu, batas kode antara setiap modul relatif jelas dan lebih mudah dipelihara pada tahap selanjutnya.
MvvmFrameComponent = mvvmFrame + komponen . Artinya, MVVMFrameComponent mengadopsi solusi komponen dari arsitektur pola MVVM .
Aplikasi Host: Ketika setiap modul anak adalah perpustakaan , semua komponen dapat diintegrasikan ke dalam aplikasi host . Pada saat ini, aplikasi host adalah aplikasi lengkap dengan semua koleksi fungsi komponen.
Perpustakaan Dasar Publik yang Terkomponen: Terutama termasuk kerangka kerja pengembangan cepat MVVMFrame dan beberapa perpustakaan dasar inti publik sebagai komponen, yang memfasilitasi konstruksi cepat proyek komponen.
Perpustakaan Sumber Daya Publik Komponen: Terutama lebih mudah untuk mengelola beberapa aspek sumber daya publik di setiap modul .
Modul Fungsi Lelucon Sederhana: Terutama digunakan untuk menunjukkan implementasi pengembangan komponen berdasarkan MVVMFrame , sebagai salah satu contoh implementasi modul untuk pengembangan komponen.
Modul Fungsi Berita Sederhana: Terutama digunakan untuk menunjukkan implementasi pengembangan komponen berdasarkan MVVMFrame , sebagai salah satu contoh implementasi modul untuk pengembangan komponen.
Proyek -> Variabel Kustom di Build.Gradle IsBuildModule
Variabel kustom isBuildmodule untuk mengelola setiap modul anak secara seragam untuk memfasilitasi pengalihan antara aplikasi dan perpustakaan
Ketika isBuildModule = true , itu berarti bahwa setiap submodule adalah aplikasi , yaitu, modul dapat dijalankan secara mandiri. Ketika isBuildModule = false , itu berarti bahwa setiap submodule adalah perpustakaan , yaitu, modul digabungkan ke dalam aplikasi host sebagai perpustakaan
Proyek -> Modul -Build.Gradle
Modul komponen universal build.gradle untuk manajemen terpadu yang nyaman
Menurut IsBuildModule , kami dapat secara seragam mengelola setiap modul anak untuk beralih antara aplikasi dan perpustakaan .
Karena perpustakaan dasar inti dari MVVMFrameComponent didasarkan pada MVVMFrame , Anda harus memiliki pemahaman tertentu tentang MVVMFrame agar lebih berguna saat menggunakan komponen MVVMFrameC . Di sini saya tidak akan lagi memperkenalkan penggunaan MVVMFrame . Untuk detailnya, Anda dapat secara langsung melihat MVVMFrame.
Untuk modul yang umum, Anda dapat mencoba menulisnya di BaseApp . Untuk modul yang relatif mandiri, Anda dapat menulisnya di kelas implementasi dari IcomponentApp yang sesuai dari modul.
Catatan Khusus: Implementasi IcomponentApp hanyalah solusi untuk kebutuhan Anda yang sesuai dan opsional. Gunakan sesuai kebutuhan.
Berikut adalah contoh kelas implementasi IcomponentApp untuk setiap modul untuk referensi:
Kelas Implementasi IcomponentApp di Modul-Joke adalah JokecomponentApp
Kelas implementasi IcomponentApp di Module-News adalah NewsComponentApp
Di bawah ini adalah contoh kode dalam nake modul
class JokeComponentApp : IComponentApp {
override fun onCreate ( app : BaseApp ) {
}
}Konfigurasikan kelas implementasi icomponentApp yang sesuai dengan meta-data di manifes , contohnya adalah sebagai berikut:
<!-- name为:IComponentApp的实现类,value固定为: ComponentApp -->
< meta-data android : name = " com.king.mvvm.joke.JokeComponentApp "
android : value = " ComponentApp " />Ketika Anda ingin mendapatkan kelas implementasi IcomponentApp dari setiap modul, Anda dapat memperolehnya melalui metode GetComponentApp dari BaseApp .
Untuk detail lebih lanjut, silakan periksa contoh penggunaan kode sumber di aplikasi
Jika Anda menyukai komponen MVVMFrame, atau merasa bahwa MVVMFrameComponent telah membantu Anda, Anda dapat mengklik "Star" di sudut kanan atas untuk mendukungnya. Dukungan Anda adalah motivasi saya, terima kasih?
Anda juga dapat memindai kode QR di bawah ini dan meminta penulis untuk minum kopi☕
| Blog saya | GitHub | Gitee | Csdn | Taman Blog |
|---|---|---|---|---|
| Blog Jenly | Jenly1314 | Jenly1314 | Jenly121 | Jenly |
| Akun Resmi WeChat | Kotak surat Gmail | Qq email | Grup QQ | Grup QQ |
|---|---|---|---|---|
| Jenly666 | Jenly1314 | Jenly1314 | 20867961 | 64020761 |