Saya membaca artikel tentang MVP baru-baru ini. Ia hanya memperkenalkan model MVP.
Tetapi perbezaan antara MVC dan MVP memang tidak jelas. Selepas membacanya, saya merasakan bahawa "MVP hanyalah MVC dengan spesifikasi yang lebih ketat."
Apakah peranan yang dimainkan oleh Penyampai dalam MVP?
Saya mencari beberapa maklumat tentang MVP. Dikatakan bahawa berbanding dengan Pengawal dalam MVC, Penyampai mempunyai fungsi tambahan untuk mengasingkan sepenuhnya Model dan Paparan. Tetapi sebenarnya, dalam konsep saya (dalam aplikasi harian), Model dan View dalam MVC boleh dipisahkan. Dalam perkembangan biasa saya, saya memproses data yang disediakan dalam Model dalam Pengawal dan kemudian menyampaikannya ke halaman. Dalam erti kata lain, MVC sebenarnya boleh memisahkan V dan M dalam banyak kes. Jadi, apakah tujuan atau tujuan mencadangkan model MVP?
Saya harap anda dapat memberi pendapat anda, terima kasih!
Saya sangat percaya bahawa tidak ada soalan yang buruk, hanya jawapan yang tidak baik.
Pada mulanya, hanya ada baris arahan.
Jiwa seorang jurutera perisian berjalan di atas cangkerang.
Xerox berkata: "Perlu ada GUI"...
1. MVC untuk perisian desktop
Terima kasih kepada Smalltalk. Terima kasih kepada GUI.
2. MVC dengan seni bina B/S
Kemudian, dengan kebangkitan Internet, pengaturcara meletakkan program mereka untuk dijalankan pada pelayan Pada masa ini, GUI berubah. Realiti semua antara muka (Lihat lapisan) digantikan oleh penyemak imbas (HTML).
Pada masa ini, MVC dibawa ke seni bina BS. Terima kasih matahari. Terima kasih topang.
3. MVP bahagian hadapan
Kemudian, penyemak imbas menjadi lebih berkuasa, begitu banyak perniagaan telah dilaksanakan dalam penyemak imbas.
Jadi pengaturcara membawa MVC ke lapisan View. Walau bagaimanapun, menggunakan HTML+CSS+JS sebagai lapisan paparan adalah sangat berbeza daripada GUI desktop tradisional. Oleh itu, untuk memberikan permainan penuh kepada ciri-ciri bahasa js, MVP muncul.
Perbandingan corak persembahan Senibina MVP(SC),MVP(PV),PM,MVVM dan MVC
[Terjemahan] MVP(SC), MVP(PV), PM, MVVM dan perbandingan seni bina model prestasi MVC
Evolusi seni bina:
Mod MVC:
Lihat <-> Pengawal <-> Pengawal bukan sahaja bertanggungjawab untuk penghalaan, tetapi juga untuk sambungan antara lapisan perniagaan dan lapisan pembentangan secara fleksibel semasa pembangunan. Ia tidak seintuitif MVP semasa pembangunan, dan ia lebih ringkas dalam MVP yang kurang fokus.
Mod MVP:
Lihat <-> Penyampai (Pengawal <-> Peristiwa) <--> Model; Lapisan mesej Masukkan ke dalam acara yang dicetuskan oleh setiap mesej dan lakukan operasi perniagaan dalam acara tersebut. Ia menjadikan pembangunan lebih mudah dan lebih intuitif, tetapi mengorbankan fleksibiliti operasi lapisan pengawal.
Mod MVVM:
yang dipertingkatkanLihat <-> ViewModel <-> Daripada satu kemas kini latar belakang yang dicetuskan oleh View. Boleh dikatakan MVVM ialah versi MVP