Jika kamu sudah terbiasa atau sering belajar coding, kamu pasti sudah mengenal dengan yang namanya Framework. Sampai saat ini hampir semua framework yang populer, seperti Laravel ataupun Codeigniter sudah menganut konsep MVC dalam pengembangan sebuah website. Lalu apa pengertian dari MVC itu sendiri?
MVC sendiri merupakan sebuah pola desain arsitektur dalam pengembangan website yang terdiri dari 3 bagian, yaitu Model, View, dan Controller. Tujuan dari MVC salah satunya adalah untuk memisahkan antara tampilan, data, dan proses.
- Model, bagian yang mengelola data seperti dari database.
- View, menyajika tampilan kepada pengguna.
- Controller, komponen utama yang mengendalikan alur prosesnya.
 Mengapa kita harus belajar MVC? Beberapa alasan kita harus belajar MVC ini adalah
- Organisasi dan struktur kode yang baik, entah itu tempat kita menyimpan suatu file ataupun struktur kode.
- Memisahkan tampilan dan logic.
- Mudah dalam melakukan perawatan kode.
- Digunakan oleh banyak Web Application Framework seperti, Laravel dan Codeigniter. Jika kalian sudah paham dengan konsep MVC ini ketika kalian mulai bekerja dengan framework diharapkan tidak akan kesulitan lagi memahami konsep MVP nya.
Di artikel yang satu ini, saya hanya akan menjelaskan alur kerjanya saja, langsung saja ke topik utama pembahasannya.
Â
Alur Kerja MVC Dalam Sistem Pengembangan Web
1. Bagian view merequest informasi untuk agar bisa ditampilkan kepada pengguna atau user.
2. Request tersebut akan diambil oleh bagian controller dan diserahkan ke bagian model jika diperlukan.
3. Kemudian jika diperlukan model akan mengolah dan mencari data informasi itu ke dalam database.
4. Controller akan mengambil hasil olahan yang dilakukan di model dan menatanya di bagian view.
Â
Sebenarnya alur kerja MVC dalam sistem pengembangan website ini cukup sederhana seperti yang dijelaskan diatas. Ya walaupun setiap framework biasanya memiliki alur kerja yang berbeda beda, tetapi konsep dasarnya tentu tetap sama.
Dibawah ini merupakan contoh alur kerja MVC pada framework Codeigniter.
1. Pertama-tama, ada bagian routing yang akan menentukan controller mana yang akan diakses.
2. Setelah itu, masuk ke bagian security yang akan membersihkan semua request yang dikirim di routing untuk mencegah bilamana ada seseorang yang berniat buruk terjadap website kalian.
3. Setalah aman, selanjutnya akan masuk ke bagian controller sesuai dengan controller yang dipilihkan di bagian routing.
4. Controller akan memanggil model jika diperlukan.
5. Selanjutnya Controller akan menampilkan view mana yang akan digunakan.
6. Selanjutnya sebelum view ditampilkan ke user, masuk dulu ke komponen yang namanya caching agar aplikasinya tambah cepat. Setalah caching akhirnya view akan ditampilkan kepada user.