[WEB] CodeIgniter dengan Hierarchical Model View Controller dan Blade Bagian 1



CodeIgniter adalah sebuah framework pemrograman web yang sederhana dan mudah dimengerti programmer pemula. Hal ini yang membuat CodeIgniter menjadi framework yang paling umum digunakan untuk pemrograman web. CodeIgniter menggunakan konsep Model View Controller (MVC), namun standar MVC terasa kurang ketika akan membuat web dengan multi user dan multi view

   CodeIgniter dapat dikembangkan menjadi Hierarchical Model View Controller (HMVC) agar bisa membuat struktur multi user yang mudah saat development, sedangkan untuk mempermudah membuat tampilannya bisa menggunakan Blade milik Laravel. Blade adalah sebuah library yang digunakan untuk membuat template view. Jika secara tradisional programmer membuat full code HTML untuk setiap halaman, dengan Blade programmer hanya perlu membuat template tampilannya dan mengganti bagian kontainernya saja untuk setiap halaman.

Perbandingan struktur application CodeIgniter biasa versus CodeIgniter dengan HMVC adalah dibawah ini
Struktur Application CodeIgniter Biasa



Struktur Application CodeIgniter dengan HMVC


Beberapa keuntungan menggunakan HMVC menurut penulis adalah sebagai berikut :
1. Mudah membaca kode ketika jumlah memiliki controller beserta function yang cukup banyak, karena bisa dikelompokan ataupun dipecah kedalam module - module
2. Mudah ketika akan menjalankan multi level user karena bisa membuat user tersebut menjadi sebuah module
3. Module menjadi bisa digunakan kembali ketika menemukan alur atau fungsi yang mirip. Ketika kuliah mungkin jarang menemukan hal ini tapi ketika sudah bekerja dan mengerjakan projek sungguhan, module yang dapat digunakan kembali ini sangat penting
4. Mudah dalam pembagian tugas ketika bekerja dalam tim, karena dibagi permodule maka anggota tim dapat ditugaskan untuk mengerjakan module tertentu

   Sama seperti HMVC fungsi Blade adalah agar kode mudah dibaca, bedanya jika HMVC tadi untuk struktur belakang yang berisi prosesnya di server kalau Blade untuk depannya yang berisi tampilan di client side. Bentuk struktur umum tampilan html adalah seperti dibawah ini :
Struktur tampilan html

   Jika mengetik setiap page adalah 1 file HTML penuh seperti itu tentu saja nulis kodenya akan sangat lama dan jika terjadi suatu perubahan juga harus mengganti satu persatu sehingga memakan waktu yang lama. Selain waktu yang lama juga akan memakan memori yang cukup banyak di server.




   Saat menggunakan Blade bagian - bagian tampilan diatas bisa dipisah - pisah dan dijadikan menjadi sebuah template tampilan. Jadi saat membuat tampilan pada suatu menu atau fungsinya hanya perlu membuat kode bagian konten saja. Langsung saja ke contohnya bisa menggunakan framework yang biasa penulis gunakan dibawah ini :

Projek CodeIgniter HMVC

Unduh / Clone

   Bagian instalasi dan pembahasan tentang Penerapan framework CI HMVC dan Blade yang biasa penulis gunakan dilanjutkan di halaman lain yaitu dibawah ini.

Penerapan Framework CI HMVC Blade

Komentar