Apa Itu CodeIgniter?
Begitulah kira-kira pertanyaan pertama yang terlintas dari pikiran kawan-kawan saat ada seseorang yang berbicara tentang CodeIgniter. Bukan hanya tentang CodeIgniter, tapi pertanyaan "APA" pada dasarnya akan acap kali ditanyakan pada setiap pernyataan yang pertama kali kita dengar. Betul kan..??Pengertian CodeIgniter : Fungsi, Kelebihan dan Kekurangannya |
Pengertian CodeIgniter
CodeIgniter adalah sebuah framework berbasis PHP yang kuat dengan footprint yang sangat kecil, dibangun untuk pengembang yang membutuhkan toolkit sederhana dan elegan untuk membuat aplikasi web dengan fitur lengkap. Lantas Apa itu framework? Framework atau dalam bahasa indonesia dapat diartikan sebagai "kerangka kerja" merupakan sebuah tool yang bekerja pada suatu konsep tertentu dan terdiri dari berbagai fungsi yang dapat dengan mudah dijabarkan atau dialih-gunakan untuk membuat fungsi-fungsi lain yang lebih kompleks. Maksudnya, jika seorang Programmer menggunakan sebuah framework sebagai lingkup kerjanya, dia harus mematuhi segala ketentuan dari framework tersebut. Lebih lanjut ia dapat membangun berbagai fungsi yang rumit dan kompleks dengan menggunakan fungsi-fungsi yang telah disediakan oleh Framework tersebut. Jadi dia tidak perlu lagi menulis ulang semua coding, Ia cukup mempelajari cara menggunakan kerangka (frame) yang telah tersedia dari framework tersebut.CodeIgniter pertama kali ditulis oleh Rick Ellis (http://www.ellislab.com), seorang musisi rock yang beralih profesi menjadi programmer dalam riset kecil-kecilannya dan menghasilkan suatu framework PHP yang berukuran kecil, ringan serta memenuhi fitur umum aplikasi PHP. Namun, sejak tahun 2014 CodeIgniter telah dimiliki oleh British Columbia Institute of Technology (BCIT). Segala hal mengenai CodeIgniter dapat ditemui di websiter resminya beralamatkan http://www.codeigniter.com. Untuk saat ini telah merilis versi 3.0.6.
Apa Fungsi CodeIgniter ?
Sebagaimana yang telah saya utarakan sebelumnya bahwa CodeIgniter adalah sebuah kerangka kerja yang berisi berbagai fungsi yang dapat digunakan untuk membuat fungsi-fungsi yang kompleks. Dalam membangun sebuah web, kita biasa sangat berkutat pada script koneksi database, pagination, proses login, query database. Dengan menggunakan sebuah framework, CodeIgniter tentu saja, kita tidak perlu lagi menuliskan perintah mysql_connect, myql_select_db atau semacamnya, karena CodeIgniter sudah menyediakan semua itu. Kita hanya perlu tau bagaimana cara menggunakannya. Dan saya rasa, semua itu tidaklah terlalu susah. Anda dapat membacanya sendiri di http://www.codeigniter.com/user_guide. Jadi intinya adalah: ia mampu mempercepat dan mempermudah kita dalam pembuatan website.Disamping itu, penggunaan CodeIgniter juga akan menghasilkan suatu struktur pemrograman yang sangat rapi, baik dari segi kode maupun struktur file phpnya. Struktur aplikasi yang rapi tentu sangat diperlukan dari sebuah aplikasi. Misalnya, jika terjadi suatu error dalam aplikasi, dengan code yang rapi kita dapat dengan mudah menemukan kesalahan tersebut. Bukan hanya itu, bayangkan suatu saat aplikasi yang kita bangun membutuhkan fungsi-fungsi lain yang sangat penting, tentu akan diperlukan pengembangan lebih lanjut. Dan sekali lagi, hal itu juga sangat memerlukan struktur coding yang rapi. Dengan menggunakan CodeIgniter, untuk mewujudkan struktur kode yang rapi sangat-sangat mungkin terjadi. Hal itu dikarenakan CodeIgniter dibangun berbasis MVC (Model, View, Controller) yang memisahkan antara tampilan dan logic aplikasi.
Model View Controller CodeIgniter |
- Model adalah bagian yang bertanggung jawab terhadap operasi database, baik itu create, read, update atau delete. Ia berupa fungsi-fungsi operasional database yang dapat dipanggilkan oleh Controller.
- View adalah bagian yang menangani tampilan. bagian inilah yang bertugas untuk mempresentasikan data kepada user. Ia berbentuk struktur HTML yang berisikan variabel data yang dikirimkan oleh Controller.
- Controller adalah bagian yang mengatur hubungan antara Model dan View. Ia adalah otak dari kinerja aplikasi. Ia terdiri dari fungsi-fungsi yang bersifat operasional dan logikal. Saat ada request yang masuk, ia akan menangani dan memprosesnya untuk kemudian ditampilkan dalam View.
Kelebihan-Kelebihan CodeIgniter
- Berukuran sangat kecil. File download nya hanya sekitar 2MB, itupun sudah include dokumentasinya yang sangat lengkap.
- Dokumentasi yang bagus. Saat anda mendownloadnya, telah disertakan dengan dokumentasi yang berisi pengantar, tutorial, bagaimana panduan penggunaan, serta referensi dokumentasi untuk komponen-komponennya.
- Kompitabilitas dengan Hosting. CodeIgniter mampu berjalan dengan baik pada hampir semua platfom hosting. CodeIgniter juga mendukung database-database paling umum, termasuk MySQL.
- Tidak ada aturan coding yang ketat. Terserah anda jika anda hanya ingin menggunakan Controller, tanpa View, atau tidak menggunakan Model, atau tidak salah satu keduanya. Namun dengan menggunakan ketiga komponennya adalah pilihan lebih bijak.
- Kinerja yang baik. Codeigniter sangat cepat bahkan mungkin bisa dibilang merupakan framework yang paling cepat yang ada saat ini.
- Sangat mudah diintegrasikan. CodeIgniter sangat mengerti tentang pengembangan berbagai library saat ini. Karenanya CodeIgniter memberikan kemudahan untuk diintegrasikan dengan library-library yang tersedia saat ini.
- Sedikit Konfigurasi. Konfigurasi CodeIgniter terletak di folder aplication/config. CodeIgniter tidak membutuhkan konfigurasi yang rumit, bahkan untuk mencoba menjalankannya, tanpa melakukan konfigurasi sedikitpun ia sudah bisa berjalan.
- Mudah dipelajari. Disamping dokementasi yang lengkap, ia juga memiliki berbagai forum diskusi.
Kekurangan-kekurangan CodeIgniter
- CodeIgniter tidak ditujukan untuk pembuatan web dengan skala besar.
- Library yang sangat terbatas. Hal ini dikarenakan sangat sulit mencari plugin tambahan yang terverifikasi secara resmi, karena pada situsnya CodeIgniter tidak menyediakan plugin-plugin tambahan untuk mendukung pengembangan aplikasi dengan CI.
- Belum adanya editor khusus CodeIgniter, sehingga dalam melakukan create project dan modul-modulnya harus berpindah-pindah folder.
Lain kali akan kita bahas lebih lanjut tentang bagaimana cara menggunakannya. Semoga artikel ini dapat bermanfaat. :-)
terima kasih atas informasi yng di berikan.....sangat bermanfaat
BalasHapusterimakasih sudah sharing ilmu pengetahuannya ditunggu ilmu selanjutnya
BalasHapus