Mengenal Konsep MVC

Selamat datang di tutorial warungbelajar, dalam tutorial ini kita akan melanjutkan pembahasan seri tutorial Codeigniter. Pada part 2 kita akan mengenal konsep dari MVC di codeigniter.

Kita akan memahami konsep MVC terlebih dahulu, sebelum kita belajar mengenai fitur codeigniter lainnya, karena menurut saya konsep MVC ini sangat penting sekali untuk anda pahami, jika anda menggunakan codeigniter untuk membuat aplikasi berbasis web.

 

Mengenal Konsep MVC

MVC (Model, View, Controller) merupakan sebuah design pattern / arsitektur dari pengembangan aplikasi yang akan memisahkan dan mengelompokkan beberapa kode berdasarkan dengan fungsinya.

MVC akan membagi aplikasi kedalam 3 bagian yaitu : Model, View, dan Controller.

Model adalah bagian yang memiliki fungsi untuk berkomunikasi langsung dengan database untuk memanipulasi data seperti (insert, update, delete, seach, show), bagian model ini akan terhubungan dengan bagian controller, tetapi bagian model tidak dapat berhubungan langsung dengan bagian view.

View adalah bagian yang mengatur tampilan yang dapat dilihat oleh pengguna aplikasi, pada sebuah aplikasi web, bagian view biasanya berupa file template HTML, bagian view ini akan terhubung dengan controller, view ini memiliki fungsi untuk menerima dan menampilkan data kepada pengguna, bagian view tidak memiliki akses langsung terhadap bagian model.

Controller merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, sederhananya controller berfungsi untuk menerima request dan data dari user, berikutnya bagian controller akan menentukan proses apa yang akan dilakukan oleh aplikasi.

 

Contoh Implementasi Konsep MVC

Baik kita akan buat sebuah contoh, agar teman – teman memahami konsep MVC.

Konsep MVC di Framework Codeigniter

Keterangan : 

Dalam contoh ini semisal kita memiliki sebuah aplikasi, semisal memiliki aplikasi dengan nama codeigniterapp, nah kita coba akan jabarkan proses login dengan menggunakan konsep MVC.

  1. Saat kita akan login kita mengakses alamat localhost/codeigniterapp/index.php/login, Maka dalam ini sebenanya user mengirimkan request ke web
  2. File yang pertama kali diakses adalah file index.php, berikutnya request akan diteruskan oleh file routers.php
  3. File routers.php akan mencari chace di server, apabila terdapat routing maka hal tersebut akan dikirim sebagai balas (response), tetapi jika tidak terdapat routing maka request akan diteruskan ke bagian controller.
  4. Controller akan mengambil data yang diperlukan dari model, dan merendernya kedalam bagian view, sehingga pengguna aplikasi dapat melihat tampilan web
  5. Sesuai request yang dilakukan, dalam contoh ini adalah form login, karena kita sebelumnya melakukan request login.
  6. Semisal pengguna aplikasi telah memasukkan username dan password dibagian form login, lalu klik tombol login, Maka proses akan dilakukan kembali, semisal ketika klik tombol login, mengakses alamat localhost/codeigniterapp/index.php/login/proses
  7. Proses akan dilakukan di file routers.php, akan melakukan pengecekan routing, jika terdapat routing maka akan mengakses controller login, pada method proses
  8. Method proses pada controller login, akan mengakses bagian model yang berfungsi cek username password, controller juga menyertakan username dan password yang diinputkan dibagian form login.
  9. Bagian model akan berkomunikasi dengan database untuk melakukan pengecekan apakah terdapat username dan password yang dimasukkan pengguna melakukan form login.
  10. Berikutnya model akan mengirimkan info ke controller apakah terdapat username dan password yang sesuai di database.
  11. Controller akan mengatur bagaimana tampilan view jika username dan password sesuai, ataupun jika username dan password tidak sesuai, seperti yang telah diinfokan dibagian model.
  12. Maka Pengguna aplikasi akan dapat melihat apakah username dan password yang dientri di form login tersebut sesuai atau tidak.

 

Baik sekian dulu pembahasan konsep MVC, konsep MVC ini tidak hanya diimplementasikan di framework codeigniter, karena saat ini banyak sekali framework yang menggunakan design pattern MVC, baik sekian dulu jika ada yang ingin didiskusikan silahkan di kolom komentar, sekian dulu sampai jumpa di tutorial selanjutnya.

Leave a Comment

Your email address will not be published.