Logo ms.removalsclassifieds.com

Perbezaan antara MVC dan MVC2 (Dengan Jadual)

Isi kandungan:

Anonim

Jika terdapat sebarang masalah dalam pembangunan perisian maka corak reka bentuknya adalah penyelesaian utama untuk membetulkannya. Ia seperti cetak biru pra-takrif yang kami gunakan untuk menyelesaikan masalah reka bentuk berorientasikan objek dalam projek anda. Mula-mula ia mengetahui di mana masalahnya dan kemudian membetulkannya dan juga menerangkan prosedur dan akibatnya. MVC dan MVC2 adalah dua pendekatan berbeza kepada corak seni bina MVC (Model View Controller) yang terkenal.

MVC lwn MVC2

Perbezaan antara MVC dan MVC2 ialah MVC ialah model reka bentuk aplikasi yang terdiri daripada tiga bahagian yang saling berkaitan manakala MVC2 ialah corak yang lebih kompleks di mana pembongkaran keadaan Aplikasi dan Logik Kawalan Persembahan dilakukan. MVC termasuk model (data), paparan (antara muka pengguna), dan pengawal (permintaan proses). Perbezaan utama antara MVC dan MVC2 ialah kerumitan. Dalam aplikasi web dunia Java, dua model reka bentuk biasa (Model 1 dan Model 2) berkait rapat dengan MVC dan sering tersilap dirujuk sebagai MVC1 (atau hanya MVC) dan MVC2.

MVC ialah pendekatan generasi pertama dalam aplikasi web Java di mana halaman JavaServer Page (JSP) digunakan untuk antara muka pengguna bersama-sama JavaBeans yang boleh merangkum berbilang objek dalam satu objek untuk melaksanakan seni bina MVC. Permintaan pengguna daripada penyemak imbas dihantar kepada JSP yang memegang logik Pengawal dan mengikat Model untuk data yang akan mengemas kini paparan dan menghantar semula respons kepada pengguna yang dipaparkan dalam antara muka pengguna. Pendekatan ini menggabungkan fungsi Pengawal dan Lihat dalam halaman JSP dan oleh itu memecahkan paradigma MVC.

MVC2 telah diperkenalkan oleh Sun Microsystem org sebagai corak reka bentuk yang tidak memecahkan paradigma MVC, tidak seperti MVC, di mana logik perniagaan dipisahkan daripada pandangan dan semua permintaan pelanggan dikendalikan di satu tempat dan bukannya dalam setiap fail JSP dalam MVC. Dalam corak MVC2, JSP digantikan oleh servlet untuk logik pengawal.

Jadual Perbandingan antara MVC dan MVC2

Parameter perbandingan

MVC

MVC2

Definisi

Dalam MVC, satu komponen bertanggungjawab untuk menerima permintaan dan menghantar respons. Dalam MVC2, terdapat berbilang komponen untuk menerima permintaan dan menghantar respons. iaitu Pengawal & Pandangan.
Navigasi

Dalam MVC, setiap JSP mempunyai pengawal dan logik paparan yang menentukan navigasi halaman paparan seterusnya yang menjadikannya diedarkan semula Dalam MVC2, servlet mengandungi logik navigasi halaman paparan seterusnya yang menjadikannya terpusat
Mengambil masa

Mengambil lebih banyak masa untuk menulis kod untuk membangunkan teg JSP tersuai untuk mengelakkan teg skriplet Mengambil sedikit masa untuk dibangunkan kerana semua kawalan navigasi dipusatkan.
Kemerdekaan

Logik perniagaan dan Logik persembahan digabungkan dalam JSP, jadi pereka web dan pembangun web tidak boleh berfungsi secara serentak. Memandangkan ia mempunyai pemisahan antara logik dan pandangan, itulah sebabnya pereka dan pembangun boleh bekerjasama.
Kebolehgunaan semula

Ia lebih sukar untuk digunakan semula dan dilanjutkan kerana gandingan yang ketat antara logik dan pandangan Ia mudah untuk digunakan semula dan dilanjutkan yang sesuai untuk aplikasi yang lebih besar

Apa itu MVC?

MVC ialah corak reka bentuk seni bina untuk masalah berulang reka bentuk perisian yang memberikan pendekatan penerangan peringkat tinggi kepada penyelesaian. Seni bina MVC mempunyai tiga modul: model, pandangan dan pengawal.

model: Ia mewakili keadaan data (yang dipaparkan kepada pengguna pada halaman paparan).

Lihat: Modul paparan ialah antara muka pengguna yang melaluinya pengguna melakukan tindakan dan berkomunikasi secara dalaman kepada pelayan.

Pengawal: Modul pengawal memproses permintaan pengguna, logik perniagaan dan dengan bantuan model memanipulasi data yang dipaparkan dalam UI.

MVC bermula dengan JSP menerima permintaan klien yang berfungsi bersama JavaBeans untuk logik pemprosesan data yang dihantar kepada klien. Tugas dibahagikan antara JavaBeans dan JSP di mana JSP memanggil JavaBeans dan logik perniagaan di mana JavaBeans secara dalaman memanggil pangkalan data untuk menyimpan/mendapatkan data. Pada akhirnya, JSP menghantar semula respons kepada klien yang mengemas kini paparan dalam penyemak imbas.

JavaBeans yang juga dirujuk sebagai Beans bertanggungjawab untuk enkapsulasi berbilang objek ke dalam satu objek manakala JSP mempunyai kedua-dua Pengawal dan logik View. MVC juga dirujuk sebagai halaman-centric kerana akses terus ke halaman paparan lain yang sesuai untuk aplikasi yang lebih kecil.

Apakah itu MVC2?

Kebanyakan jurutera perisian berpendapat bahawa MVC2 ialah versi MVC yang dipertingkatkan, seperti versi 2.0; ia bukan. Model 1 dan Model 2 dibangunkan secara serentak dan merupakan dua varian tentang cara perkara harus dilakukan.

MVC2 ialah corak yang lebih kompleks di mana pembongkaran keadaan Aplikasi dan Logik Kawalan Persembahan dilakukan. Ia mempunyai pengawal di mana logik telah ditulis untuk memproses semua permintaan masuk dan tindakan yang diperlukan yang perlu diambil, seperti navigasi ke halaman paparan yang berbeza atau mengemas kini keadaan Model.

Di sini, dalam MVC2, servlet bertindak sebagai lapisan pengawal yang juga merupakan antara muka antara lapisan Lihat dan lapisan Model di mana ia menerima permintaan daripada klien atau antara muka Pengguna yang tidak lain hanyalah lapisan paparan, dan memprosesnya dengan pengesahan yang sesuai jika diperlukan. JSP mempunyai logik pandangan yang secara dalaman menggunakan Beans, jadi jika servlet mengemas kini keadaan model ia akan ditunjukkan dalam halaman paparan.

Tidak seperti MVC, JSP dalam MVC2 tidak mempunyai kedua-dua pengawal dan logik paparan; tanggungjawab tunggalnya adalah untuk mengambil keadaan terkini model daripada servlet itu untuk dipaparkan pada Halaman paparan.

Perbezaan Utama Antara MVC dan MVC2

Kami sering mengelirukan MVC2 sebagai versi 2.0 MVC, namun, tidak, ia adalah model reka bentuk Java di mana seni bina MVC2 adalah lebih kompleks dan paling sesuai untuk aplikasi yang lebih besar.

Faktor pembezaan antara hubungan MVC dan MVC2 boleh dirumuskan berdasarkan alasan berikut:

  1. Dalam MVC, satu komponen bertanggungjawab untuk menerima permintaan dan menghantar respons tetapi dalam MVC2, terdapat berbilang komponen untuk menerima permintaan dan menghantar respons. iaitu Pengawal & Pandangan.
  2. MVC1 menggabungkan logik pembentangan dengan ketat dengan logik perniagaan tetapi MVC 2 mengasingkan atau menyahgandingkan logik pembentangan daripada logik perniagaan.
  3. Dalam MVC Business logik dan pembentangan Logik digabungkan dalam JSP, jadi pereka web dan pembangun web tidak boleh berfungsi serentak tetapi dalam MVC2 terdapat pemisahan antara logik dan pandangan itulah sebabnya pereka dan pembangun boleh bekerjasama.
  4. Dalam MVC 1, pengawal dan model, kedua-duanya adalah JSP atau kita boleh katakan ditulis dalam JSP yang sama. Tetapi dalam MVC2 pengawal adalah servlet dan modelnya adalah kelas Java.
  5. MVC Tidak menyokong kebolehgunaan semula komponen aplikasi manakala MVC2 menyokong kebolehgunaan semula komponen yang baik untuk aplikasi yang lebih besar dan lebih kompleks.

Kesimpulan

Seperti yang kita lihat perbezaan garis tebal antara MVC dan MVC2 walaupun mempunyai nama yang sama tetapi kedua-duanya digunakan sebagai penyelesaian untuk masalah reka bentuk sistem yang berulang.

MVC2 adalah lebih kompleks dan mempunyai pengasingan kebimbangan yang digunakan untuk aplikasi yang lebih besar atau pengalaman pengguna yang intuitif kerana ciri terpusatnya di mana semua permintaan dikendalikan oleh satu pengawal. Tidak seperti MVC di mana JSP semasa adalah yang menentukan halaman paparan seterusnya untuk dibuka.

MVC2 menyahgandingkan halaman paparan daripada pengawal, tidak seperti MVC yang mengekalkan kedua-dua logik perniagaan dan paparan digabungkan dalam JSP. Oleh itu, MVC2 lebih mudah diselenggara untuk berbilang pengguna kerana ciri kebolehgunaan semula dan lanjutannya serta mampu menyokong sistem yang lebih rumit dalam masa nyata, seperti Facebook, Instagram.

Rujukan

  1. https://www.scientific.net/AMM.198-199.537
  2. https://ieeexplore.ieee.org/abstract/document/777091/
  3. https://academic.oup.com/jpp/article-abstract/64/3/397/6135294

Perbezaan antara MVC dan MVC2 (Dengan Jadual)