Codeigniter sendiri merupakan salah satu dari banyak framework PHP dengan model MVC (Model, View, Controller) yang sering digunakan oleh para developer aplikasi berbasis web. Codeigniter pertama kali dirilis pada tanggal 26 Februari 2006 dan hingga tulisan ini saya buat, versi stabil terakhir sudah mencapai versi 2.2 dan kini juga telah dirilis versi 3.0 RC 3.
Berbicara soal MVC, Model View Controller adalah merupakan suatu konsep yang cukup popular untuk membangun aplikasi berbasis web. MVC memisahkan pengembangan aplikasi berdasarkan komponen utama untuk membangun sebuah aplikasi melakukan fungsi-fungsinya seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Dalam suatu aplikasi, sebuah MVC pattern dibangun dengan 3 jenis komponen antara lain :
- Model, merupakan kumpulan class/fungsi yang berhubungan langsung dengan database untuk melakukan manipulasi data (insert, update, delete, search), menangani validasi dari controller, namun tidak dapat berhubungan langsung dengan view.
- View, merupakan bagian yang akan menangani tampilan dalam sebuah aplikasi berbasis web dan juga berfungsi menerima dan mempresentasikan data kepada pengguna yang biasanya berisi kode HTML yang diatur oleh controller.
- Controller, merupakan bagian yang mengatur hubungan antara model dengan view dimana controller ini berfungsi untuk request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi.
Berikut adalah beberapa kelebihan Codeigniter dibanding dengan framework lainnya.
- Performa sangat cepat. Eksekusi yang lambat pada framework disbanding dengan PHP from the scratch menjadi satu alasan kenapa tidak memilih framework. Namun tidak dengan codeigniter, bahkan dapat dikatakan codeigniter merupakan framework yang tercepat disbanding framework lainnnya.
- Nearly zero configuration (minim pengaturan). Untuk penyesuaian database dan keleluasaan routing tetap dijinkan untuk melakukan konfigurasi dengan merubah beberapa file seperti databse.php. Namun untuk kebutuhan codeigniter dasar, hanya dibutuhkan sedikit perubahan/konfigurasi pada folder config.
- Banykannya komunitas pengguna Codeigniter, sehingga memudahkan kita untuk berinteraksi dengan pengguna lain baik untuk bertanya atau berbagi.
- Dokumentasi yang sangat lengkap.
- Codeigniter sudah menggunakan model MVC. Untuk hal ini sudah dijelaskan pada paragraph diatas.