Mengenal Konsep HMVC dalam CodeIgniter 3 untuk Pengembangan Aplikasi Web yang Terstruktur


Apa Itu Konsep HMVC di CodeIgniter 3?
CodeIgniter adalah salah satu framework PHP yang populer digunakan untuk membangun aplikasi web. Framework ini mempromosikan konsep pemisahan tugas dalam pengembangan web, yang dikenal sebagai Model-View-Controller (MVC).  Namun, ketika proyek-proyek kita menjadi lebih besar dan lebih kompleks, struktur MVC bawaan CodeIgniter mungkin tidak cukup untuk memenuhi kebutuhan pengembangan yang ada.

Penerapan HMVC pada CodeIgniter adalah versi pengembangan dari Design Patern MVC (Model-View-Controller). HMVC sendiri adalah singkatan dari Hierarchical-Model-View-Controller. Atau bisa kita sebut sebagai versi MVC yang diimplementasikan secara hirarkis. Hirarkis di sini maksudnya adalah hirarki folder (struktur folder) yang mana menjadi modul.

HMVC merupakan sebuah pengembangan tingkat lanjut dari MVC yang bersifat modular atau per modul-modul. Jadi kalau di MVC itu query, logika, dan tampilan di pisah, maka di HMVC ini di pisah sesuai modul-modulnya sendiri, jadi setiap modul itu memiliki MVC (Model View Controller) sendiri pula. Kuncinya adalah, satu modul memiliki satu MVC, atau bisa dikatakan lebih gampangnya adalah, satu modul memiliki masing-masing file model, file view, dan file controller. Meskipun masing-masing file tersebut tidak selamanya diperlukan, ada kalanya cuma perlu file view dan controller saja.



Penerapan HMVC pada CodeIgniter memiliki beberapa keuntungan. Sistem akan dipisahkan berdasarkan modul per-modul, yang akan sangat memudahkan pengerjaan, perawatan, dan pembagian tugas dalam kerja tim. Dalam konsep HMVC, controller, model, dan view tidak berada dalam satu direktori yang menyebabkan programmer tidak lagi bingung, terutama dalam kerja tim. Namun, perlu diingat bahwa engine CodeIgniter tidak menyediakan dukungan bawaan untuk konsep HMVC. Oleh karena itu, kita perlu membuat implementasinya sendiri dengan memanfaatkan ekstensi moduler.


Semoga bermanfaat :)

Posting Komentar

0 Komentar