Hai Sipinter! kali ini admin akan memperkenalkan kalian konsep pemrograman, yang sangat populer digunakan dalam pembuatan web yaitu konsep MVC.
Dengan adanya MVC membuat aplikasi lebih terstruktur lagi, sehingga konsep ini banyak digunakan dalam pengembangan aplikasi terutama web.
Yang harus kalian ketahui hampir semua framework PHP menggunakan konsep MVC, kalian masih ragu untuk konsep ini?
Tidak hanya ketika menggunakan framework saja kita menggunakan konsep MVC, bahkan jika kita membuat aplikasi dengan koding PHP murni pun kita perlu menerapkan MVC.
Maka dari itu kali ini kita akan membahas tuntas apa itu MVC dan apa manfaatnya dalam pengembangan web.
Apa itu MVC?
MVC (Model-View-Controller) merupakan sebuah metode dalam pengembangan web yang memisahkan setiap bagian utama dari sebuah web mulai dari bagian manipulasi data (Model), bagian antarmuka pengguna (View) dan bagian yang mengkontrol sebuah web (Controller).
MVC pertama kali dikenalkan oleh peneliti XEROX PARC yang mengerjakan bahasa pemrograman Smalltalk pada tahun 1970-an.
Kunjungi juga : Belajar Konsep OOP dalam Pemrograman PHP
Penjelasan Bagian Model, View dan Controller dalam MVC
Berikut merupakan penjelasan fungsi setiap bagian dari MVC yaitu model, view dan controller:
Model
Model merupakan bagian yang besisi struktur data, dimana bagian ini berfungsi untuk menyimpan, mengatur dan memanipulasi data.
Biasanya bagian model bertugas untuk mengelola data dari sebuah database, mulai dari memasukan data, mengubah data, menghapus data dan lain-lain.
Model akan menjalankan tugas pengelolaan data yang berasal dari bagian controller.
View
View merupakan bagian antarmuka penguna yang menjembatani pengguna dengan aplikasi.
View merupakan yang bagian yang mengatur tampilan sebuah aplikasi yang dilihat pengguna.
View sendiri merupakan bagian yang akan menampilkan data dari model yang sudah diolah oleh controller untuk pengguna.
Bisa dibilang bagian view merupakan frontend sebuah website.
Controller
Controller merupakan bagian yang menjebatani antara bagian View dan Model.
Controller merupakan bagian aplikasi yang berfungsi melakukan proses pengolahan sebuah data dari model dan mengirimkannya ke halaman web yang ada di bagian view.
Controller juga akan menerima data yang dikirim oleh pengguna dari halaman web (view), baik untuk dikelola atau untuk di simpan ke model.
Controller juga berfungsi untuk mengelola routing URL sebuah web, artinya controller yang akan menentukan halaman mana yang akan ditampilkan jika sebuah alamat URL tertentu diakses pengguna.
Bisa dibilang controller merupakan bagian backend dari sebuah aplikasi web.
Penjelasan Hubungan Antara Bagian Model, View dan Controller
Konsep MVC akan membagi sebuah aplikasi ke beberapa bagian sesuai dengan fungsinya dimana setiapa bagian tersebut akan saling berhubungan atau berinteraksi.
Berikut merupakan interaksi yang terjadi antara Model, View dan Controller:
- Bagian model bertugas untuk mengelola data sebuah aplikasi dan menerima input yang diberikan user melalui controller.
- Bagian view akan menampilkan data dari model berdasarkan format yang diinginkan pengguna.
- Bagian controller akan menerima input, melakukan validasi data dan melanjutkannya ke model.
Untuk lebih jelas hubungan antara model, view dan controller bisa lihat gambar di bawah:

Manfaat Penggunaan Konsep MVC Dalam Pengembangan Web
Berikut merupakan manfaat yang akan kita rasakan jika kita menggunakan konsep MVC dalam mengembangkan sebuah web:
- Membuat Struktur Code Lebih Rapi,
- Efesiensi Penulisan Code Program Web,
- Memudahkan Pengembangan Web Yang Berkelanjutan,
- Memudahkan Dalam Melalukan Web Testing,
- Memudahkan Penyelesaian Masalah Jika Terjadi Error pada Web,
- Meningkatkan Keamanan Web.
Karena dengan dipisahkannya menjadi beberapa bagian akan mempermudah kita dalam mencari kode yang kita inginkan sehingga, akan memudahkan dalam proses pengembangan, testing dan maintenance web.
Kitapun lebih mudah membatasi bagian mana saja yang dapat diakses secara public dan bagian mana yang tidak, sehingga akan memudahkan kita dalam meningkatkan keamanan web.
Sekian postingan kali ini semoga informasi diatas bermanfaat untuk kita semua.
Jangan lupa tinggalkan komentar jika kalian memiliki pertanyaan atau saran!
“Nikmati sebuah proses mulai dari belajar, mengembangkan dan berbagi untuk orang lain”.
Dukung kami dengan share postingan ini dan ikuti social media kami oke :D.
👍
Pokoknya sep