MVC Framework




Pengertian MVC

Apa itu MVC..?, MVC adalah kependekan dari Model, View, Controller.  MVC adalah konsep dasar yang harus diketahui sebelum menggunakan Framework PHP. MVC adalah pola pengembangan yang memisahkan logic aplikasi dengan bagian presentation.

MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu pola MVC dalam suatu aplikasi yaitu :

  1. Model berhubungan langsung dengan database untuk memanipulasi data misalnya (insert, update, delete, search). menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.
  2. View adalah bagian yang diperlihatkan pada user. Jadi, halaman web yang ditampilkan di browser adalah code yang Kita tuliskan di bagian view.
  3. Controller bertugas untuk menjembatani antara model dan view. Selain itu controller juga bertugas untuk mengambil library yang ada.

Singkat kata Model untuk mengatur alur database, View untuk menampilkan web, sedangkan Controller untuk mengatur alur kerja antara Model dan View.

Di dalam Codeigniter, kita tidak harus selalu menggunakan ketiga bagian di atas, Kita bisa saja tidak menggunakan model jika aplikasi kita tidak mengambil data dari dalam database.

Jadi misalnya Anda ingin membuat akun facebook atau e-mail. Pertama Anda akan melihat tampilan sign-up / register itulah View, kemudian Anda menuliskan form pengisian seperti username, password, dll dan Anda klik sign-up / register maka di sini View memanggil Controller dan Controller memanggil Model, sedangkan Model mengecek apakah Anda sudah sesuai dengan kriteria pendaftaran seperti sudah mengisi username, password dan lain sebagainya. Kemudian Model menggembalikan (callback) ke Controller dan Controller mengembalikan ke View, dan kita akan melihat berhasil atau tidak kita sign-up/register.

Berikut adalah gambaran alur nya:

Drawing1.png

Jika dirasa masih kurang paham, perumpaman yang mudah itu gini, Ibaratkan kita makan di sebuah warung makan di pinggir jalan. sekenarionya gini:

  1. Kita Masuk Ke Warung Makan Tersebut
  2. Kita Pesan Makanan ke pada Penjualnya (Lalu Kita Duduk di kursi yang disediakan)
  3. Si Penjual menyuruh si juru masak untuk memasak makanan yang kita pesan
  4. Si juru masak menyerahkan kepada penjual dan penjual mengirim kan Kita makanan yang Kita pesan tadi.

“Luh lo… ini mau ngejelasih MVC ato mau belajar masak sih mas?”. (Bentar-bentar ini hanya sebuah perumpamaan aja) 🙂 . nah… disini sebuah warung makan kan selalu memisahkan antara tempat pelanggan menerima makanan, tempat pemesanan makanan, dan tempat dimana makanan itu diolah. Nah… gak mungkin kan sebuah warung makan itu tempatnya jadi satu ruang gitu..? 🙂  kita pesen, terus di masak di situ juga..? bisa-bisa sebelum makan kita udah ngerasa kenyang dulu karena melihat proses memasaknya.

Nah konsep MVC itu juga seperti itu. Kita Memisahkan Antara Proses Pengolahan data ke database (Model), Tempat Pengolahan Request atau bussines logic aplikasinya di Controller, dan Penampilan datanya hanya di View.

Nah… Sedikit tambahan penjelasan lagi.., Disini ketika kita megetikan sebuah alamat semisal https://trinanda3.wordpress.com/2017/10/04/mvc-framework/ Proses itu langsung di ambil alih oleh controller, setelah itu di controller jika ada data yang ingin di tampilkan dari database, dia akan memanggil model dan menanyakan (Hoi, model aku meminta data postingan “Konsep MVC”), jika datanya ada, maka akan di kembalikan lagi di controller kemudian diolah di controller setelah itu baru lah data tersebut di kirim ke View dan siap di tampilkan.

Ok.. sekian dulu, semoga bermanfaat ya 🙂

sumber: 

  1. http://azuharu.net/codeigniter/pengertian-mvc-di-codeigniter/
  2. https://situsali.com/konsep-dasar-mvc-model-view-controller-dari-php/
  3. https://tutorialcodeigniter.wordpress.com/2012/04/15/konsep-mvc/