Salah satu pola pemrograman yang saat ini banyak dipakai oleh para programmer adalah Model View Controller atau kerennya disingkat dengan MVC. Konsep ini juga digunakan oleh programmer joomla untuk mengembangkan komponen. Sebenarnya apasih MVC itu? Ngapain pake MVC?
Tulisan ini mencoba membahas tentang MVC dari sudut pandang pemula. Jadi mungkin banyak istilah yang disederhanakan/dibuat untuk mudah diho-oh-in. Harapannya, membuka wawasan rekan-rekan yang pemula untuk memahami MVC. Setelah itu, Anda bisa mencari pengetahuan yang lebih dalam lagi. (Catatan, untuk yang ekspert… saya mohon dengan sangat untuk tidak membaca)
oke, secara singkat MVC terdiri dari 3 bagian (Anda sudah bisa menebak dari namanya):
- Model, ini adalah bagian yang terkait dengan data. Di sini kode-kode untuk mengambil data dari database.
- View, ini adalah bagian yang menampilkan data (yang akan dilihat oleh pengunjung Anda).
- Controller, adalah bagian yang mengatur arah misalnya apakah Anda akan menampilkan list data atau hanya melihat satu data.
Â
Biar lebih ngeh lagi, bisa lihat gambar berikut ini:
Contoh, kita mengakses halaman dengan http://localhost/joomla/hello (misal lho). Nah alamat ini akan dideteksi dulu oleh controller (sebagai front office). Si front office lah yang akan menganalisa apakah alamat ini cocok untuk menampilkan semua data atau hanya melihat sebuah data. Jika alamat ini cocok untuk melihat semua data, maka ia akan menuju ke model yang bertugas menampilkan semua data.
Selanjutnya satpam model akan menjalankan perintah mami query untuk menampilkan semua gadis data. Setelah mengambil data dari database, atas petunjuk mami front office, ia larikan anak gadis data tersebut ke bagian etalase view yang telah diorder oleh mami front office bersiap-siap menerima anak gadis data tersebut. Dan akhirnya anak gadis data tersebut terpajang di etalase view…. pengunjung pun jadi ngiler untuk memencet mengeklik.
Ternyata ada pengunjung yang nakal yang ingin melihat detil gadis data. Ia memilih salah satu gadis data tersebut dengan memencet bel mengeklik link. Proses pun berulang lagi dari mami controller.
Berikutnya saya akan coba paparkan bagaimana skenario implementasi di joomla.