Konsep Model-View-Controller (MVC) secara Sederhana
Apakah kamu sering mendengar istilah MVC? Jika iya, sama! haha.. aku sangat sering mendengar ini, saat aku mendengar istilah MVC aku…
Konsep Model-View-Controller (MVC) secara Sederhana
Apakah kamu sering mendengar istilah MVC? Jika iya, sama! haha.. aku sangat sering mendengar ini, saat aku mendengar istilah MVC aku mencari tahu, mengetikkan di google “apa itu MVC” dan pertanyaan terkait hal tersebut.
Latar Belakang
Di satu titik, setelah membaca dan memahami aku merasa paham, “okay, jadi MVC itu gini, M adalah model, V adalah view, dan C adalah Controller, andddd bla.. bla.. blaa..”. Namun, di suatu ketika saat aku menghadapi framework seperti CodeIgniter atau Laravel dan mencoba menerapkannya mulai sedikit kebingungan, like “Apasih inii? kenapa harus pergi kesana kemari” misalnya saat ingin mengakses halaman About.php harus menambahkan route di Routes.php (pada conteks CodeIgniter), harus mengubah Controller, hadeeeehh sangat melelahkaannn…
Okay, lupakah kerumitan itu sejenak. Aku ingin bercerita sedikit mengenai pengalamanku pribadi, saat pertama kali mencoba MVC di CodeIgniter aku paham ga paham, rasanya seperti “okay kalau ingin menambah ini, maka harus ubah ini” hanya sekedar tahu, tapi? entah kenapaa, akhir-akhir ini aku mulai membuka CodeIgniter lagi dan merasa lupa bagaimana sih konsep MVC sebetulnya? Kenapa selalu lupa? Sangat melelahkan selalu mempelajari hal yang sama, bahkan itu basic concept dari CodeIgniter dan Laravel. Padahal, aku sudah mencoba kedua framework tersebut.
Dan untuk kesekian kalinya, saat aku ingin membuat projek menggunakan CodeIgniter, aku mempelajari ulang MVC. Rasanya? capeekk.. dibenakku mulai muncul pertanyaan “Apakah selama ini aku tidak memahami konsepnya? hanya sekedar memahami secuil dari yang seharusnya” hingga pertanyaan selanjutnya “Gimana sihh sebetulnya untuk belajar konsep itu sendiri?”. Mungkin namanya manusia bisa lupa, untuk kemudahan diriku sendiri aku menuliskan ini sebagai referensi ‘kelupaan’ Isna di masa depan.
Konsep MVC
Nahh, mulai masuk nihhh ke pembahasan. Jadi sebetulnya, apasihh MVC? yapp betull… kepanjangan dari Model View Controller. But, kali ini kita akan memahami lebih dalam dari sedekar kepanjangan, metode nya dengan analogi di kehidupan nyata.
Kita pahami satu-satu yukkk…
Model
Tugasnya: Berinteraksi dengan database. Bagian ini bertanggung jawab untuk mengambil, mengubah, dan menghapus data.
Analogi: Anggap Model sebagai manajer gudang. Jika kamu butuh data produk, kamu tidak langsung ke gudang, tetapi bertanya kepada manajer ini. Dia yang tahu di mana data disimpan dan bagaimana cara mengambilnya.
Contoh: Kode untuk mengambil semua data produk dari tabel products di database.
View
Tugasnya: Menampilkan data kepada pengguna. Isinya adalah kode HTML dan CSS yang membentuk tampilan halaman web.
Analogi: View adalah etalase toko. Fungsinya hanya untuk menampilkan produk (data) yang sudah disiapkan agar terlihat menarik oleh pengunjung.
Contoh: File HTML yang berisi tabel untuk menampilkan nama, harga, dan gambar produk.
Contoller
Tugasnya: Menjadi “otak” dari aplikasi. Ia menerima permintaan dari pengguna (misalnya, saat kamu membuka sebuah URL), berkomunikasi dengan Model untuk mengambil data yang dibutuhkan, lalu mengirimkan data tersebut ke View untuk ditampilkan.
Analogi: Controller adalah pelayan toko. Ketika pelanggan datang dan meminta untuk melihat daftar sepatu, pelayan akan pergi ke manajer gudang (Model) untuk mengambil data sepatu, lalu menatanya di etalase (View) agar bisa dilihat oleh pelanggan.
Penutup
Yapp, jadi begituu… sudah paham? perlu di ingat dalam konteks codeigniter maupun laravel, ada yang namanya request. Singkatnya seperti ini, melalui view user request (action=’/profile/edit’) lalu request tersebut memberitahu route nya apa, nah route ini mengarahkan ke controller (di controller profile, method edit), selanjutnya akan running code didalam method edit tersebut, jika di dalam controller tersebut ada code terkait model seperti database yaa otomatis akan running model, begitu seterusnya. Semua tergantung codee… yang perlu kita pahami adalah view (request) → route → controller → model (jika di controller ada code).
Sepertinya cukuppp, see youu😋
메타데이터
- post_id
- f81024eb8fc7
- slug
- konsep-model-view-controller-mvc-secara-sederhana-f81024eb8fc7
- url
- https://medium.com/@isnanramalia/konsep-model-view-controller-mvc-secara-sederhana-f81024eb8fc7
- canonical_url
- https://medium.com/@isnanramalia/konsep-model-view-controller-mvc-secara-sederhana-f81024eb8fc7
- author_url
- https://medium.com/@isnanramalia
- status
- ok
- fetched_at
- 2026-09-05 02:23:59