Apakah model MVP Android? Apakah perbezaan daripada fungsi pengendalian acara penulisan biasa?
Adakah MVP hanyalah kelas penyampai tambahan untuk memegang objek paparan Android, memproses data dan memuat semula paparan?
Adakah perbezaan daripada penulisan biasa fungsi pemprosesan acara bahawa kod dalam fungsi pemprosesan acara dialihkan ke dalam kelas penyampai?
Tetapi jika hanya perbezaan ini, ia nampaknya tidak istimewa. Bukankah kita semua begitu abstrak apabila menulis kod? Merumuskan logik perniagaan bersama-sama, mengapa kita harus memisahkan konsep MVP?
Secara peribadi, kelebihannya adalah seperti berikut:
1 Logiknya jelas, antara muka milik View, dan pemprosesan data milik Presenter, jadi tidak akan ada letupan Aktiviti dan Fragmen kod, dan penyelenggaraan dan peningkatan seterusnya juga akan menjadi sukar. Apabila saya melihat kod yang ditulis oleh orang lain, saya paling takut bahawa lapisan itu tidak jelas dan sangat sukar.
2. Pengujian adalah mudah. Penyampai boleh dibawa keluar untuk ujian sahaja.
Betul kata anda, gunakan penyampai secara khusus untuk mengendalikan pandangan.
Faedah pada pendapat saya:
1 Penyampai biasanya menerima antara muka paparan ini (Dependency Inversion Principle) membolehkan kita bergantung pada abstraksi sebanyak mungkin, supaya sebarang paparan boleh digunakan selagi ia melaksanakan. antara muka ini berkongsi logik pemprosesan ini.
2. Aplikasi SRP (Prinsip Tanggungjawab Tunggal) boleh memisahkan dan memisahkan lapisan logik pemprosesan data daripada paparan
Sebenarnya, pembangunan kami agak rawak Mengikut prinsip OCP, ia tertutup kepada pembangunan sambungan dan pengubahsuaian mungkin mempunyai versi v1 v2 v3. Kemudian apabila anda mengubah suai kod pada masa ini menggantikan yang sebelumnya. Menolak kod semula, atau mengubah suainya berdasarkan kod sebelumnya, adalah tingkah laku yang berbahaya dan tidak cekap Jika anda menggunakan MVP, maka apabila anda mempunyai versi v2 atau v3, anda mungkin telah menambah beberapa kawalan, atau kurangkan beberapa kawalan. Jika anda mengubah suai kod sebelumnya secara langsung pada masa ini, maka rangka kerja MVP sememangnya tidak berguna, tetapi jika anda mengembangkan dengan cara yang diperluaskan, ia akan menjadi berbeza, kemudian tulis antara muka baharu untuk mewarisi antara muka paparan asal, dan kemudian mencipta penyampai baru untuk mewarisi yang lama, dan menulis logik baru di dalamnya, yang mudah untuk penyelenggaraan dan ujian Anda hanya perlu menguji kod baru, dan kestabilan program adalah Seks boleh dipertingkatkan.
Jadi jika anda menulis mengikut model MVP, kebolehselenggaraan kod anda akan menjadi lebih kukuh tanpa disedari.