Home Web Laravel MVC (Model – View – Controller)

MVC (Model – View – Controller)

0

Pengertian MVC

MVC adalah sebuah arsitektur perancangan kode program. Tujuannya untuk memecah kode program utama menjadi 3 komponen terpisah dengan tugas yang spesifik. Ketiga komponen tersebut adalah:

  • Pengaksesan database, disebut sebagai Model.
  • Tampilan design (user interface), disebut sebagai View.
  • Alur logika program, disebut sebagai Controller.

Gabungan Model-View-Controller inilah yang disingkat sebagai MVC.

Ide awal dari perlunya konsep MVC adalah agar aplikasi yang dibuat bisa mudah dikelola dan dikembangkan, terutama untuk aplikasi besar.

Sebagai contoh, seorang web designer bisa fokus merancang bagian View saja, yakni tampilan design website yang terdiri dari kode HTML dan CSS plus sedikit JavaScript. Kode program untuk berkomunikasi dengan database bisa ditangani oleh programmer yang secara khusus bagian Model. Serta programmer lain mengatur alur logika program di bagian Controller.

Dengan pemisahan seperti ini, kerja tim menjadi mudah dikelola. Selain itu dengan penerapan konsep MVC yang baik, setiap bagian tidak saling bergantung sama lain. Jika ada perubahan atau modifikasi, cukup edit di bagian yang diperlukan saja, tidak harus merombak ulang semua aplikasi.

Dibalik keunggulan ini, kendala utama dari konsep MVC adalah cukup rumit untuk dipahami (terutama bagi pemula), serta file kode program menjadi banyak karena setiap bagian dari M-V-C harus ditulis dalam file terpisah.

Namun keuntungan yang didapat sebanding dengan “usaha” untuk mempelajari MVC tersebut, karena kode program kita menjadi lebih fleksibilitas dan mudah dikelola.

Diagram Alur MVC

Agar lebih mudah dipahami, kita akan bahas menggunakan diagram berikut:

Sulhi.id | » Konsep MVC (Model, View, Controller) pada Laravel » Konsep MVC (Model, View, Controller) pada Laravel

Ini adalah contoh alur yang terjadi dalam sebuah aplikasi yang menerapkan konsep MVC. Kita berangkat dari user yang sedang membuka sebuah web browser (sudut kanan bawah).