Wednesday, 6 July 2016

Apa Itu CodeIgniter

CodeIgniter adalah sebuah web framework yang dikembangkan oleh Rick Ellis dari Ellis Lab. CodeIgniter dirancang untuk menjadi sebuah web framework yang ringan dan mudah untuk digunakan. Bahkan pengakuan dari Rasmus Lerdorf, pencipta bahasa pemrograman PHP, mengatakan bahwa CodeIgniter merupakan web framework mudah dan handal.
Sebelum mencoba CodeIgniter, perlu diketahui istilah web framework itu sendiri. Menurut Microsoft Computer Dictionary, web adalah sekumpulan dokumen yang saling terhubung dalam sistem hypertext yang penggunanya akan menjelajahi web melalui halaman beranda. Sedangkan
framework adalah desain struktur dasar yang dapatd digundakan kembali (reusebale) yang terdiri dari abstract class dan concrete class di pemrograman berorientasi objek.
Menurut dokumentasi CodeIgniter, CodeIgniter merupakan toolkit bagi orang yang ingin membangun aplikasi web menggunakan PHP. Tujuannya adalah membuat pengembangan proyek menjadi lebidh cepat dibandingkan dengan menulis kode dari awal (scratch). CodeIgniter
menyediakan kumpulan library untuk tugas – tugas yang sering dilakukan (commonly needed task) dan sangat mudah undtuk mengakses library yang tersedia di CodeIgniter. Dengan menggunakan CodeIgniter, kita cukup fokus pada pengembangan projek dan meminimalisir jumlah kode yang akan ditulis.
Sebagai web framework yang populer yang menggunakan bahasa pemrograman PHP, CodeIgniter mempunyai berbagai keunggulan seperti yang disebutkan di dokumentasinya:
  1. Free, karena berada dibawah lisensi open source mirip Apache/BSD, kita dapat melakukan apapun dengan CodeIgniter. Lisensi lengkapnya dapat dilihat di halaman dokumentasi
  2. Light Weight, sistem inti CodeIgniter memerlukan library yang sedikit. Berbeda sekali dengan framework lainnya yang membutuhkan banyak sumber daya tambahan. Library tambahan akan digunakan ketika request secara dinamis, membuat sistem yang dibangun menjadi efisien dan cukup cepat.
  3. Fast, menurut dokumentasi, performa yang dimiliki CodeIgniter terbukti cepat setelah dibandingkan dengan web framework lainnya.
  4. Menggunakan kaidah M-V-C, Dengan menggunakan Model-View-Controller, kita dapat memisahkan bagian logic dan presentation dari aplikasi yang kita bangun. Hal ini tentu sangat cocok dan bagus untuk proyek yang memfokuskan desainer fokus pada template file dan programmer fokus pada pembangunan logic dari aplikasi yang dibangun.
  5. Menghasilkan URL yang bersih, URL yang dihasilkan oleh CodeIgniter bersih dan ramah terhadap mesin pencari. CodeIgniter menggunakan pendekatan segment-based dibandingkan dengan query string yang biasa digunakan oleh programmer yang tidak menggunakan web framework. Berikut adalah contoh URL yang dihasilkan CodeIgniter: http://localhost/ci/post/123.
  6. Packs a Punch, CodeIgniter hadir dengan berbagai library yang akan membantu tugas-tugas di pengembangan web yang sudah umum dan sering dilakukan seperti mengakses database, mengirim email, validasi data dari form, mengelola session, manipulasi gambar, bekerja dengan XML-RPC dan masih banyak lagi.
  7. Extensible, kita dapat menambahkan library atau helper yang kita ciptakan sendiri ke dalam CodeIgniter. Selain itu kita dapat juga menambahkan fitur lewat class extension atau system hooks.
  8. Thoroughly Documented, hampir semua fitur, library, dan helper yang ada di CodeIgniter telah terdokumentasi dengan lengkap dan tersusun dengan baik. Ketika mendapatkan unduhan CodeIgniter, dokumentasinya sudah tersedia dan siap digunakan.
  9. Mempunyai komunitas yang ramah, komunitas CodeIgniter sangat ramah dan siap membantu pengguna CodeIgniter pemula atau yang sudah mahir. Komunitasnya dapat ditemui di : http://codeigniter.com/forums/

Untuk mendukung pengembangan aplikasi yang kokoh, Code Igniter memiliki fitur – fitur
seperti berikut:
1. Model-View-Controller Based System
2. PHP 4 Compatible
3. Sangat ringan
4. Fitur lengkap untuk beberapa engine database.
5. Active Record
6. Form dan validasi data
7. Keamanan dan XSS filtering
8. Session Management
9. Email Sending Class. Supports Attachments, HTML/Text email, multiple protocols
(sendmail, SMTP, dan Mail) dan lainnya
10. Image Manipulation Library (cropping, resizing, rotating, dsb.). Mendukung GD,
ImageMagick, dan NetPBM
11. File Uploading Class
12. FTP Class
13. Localization
14. Pagination
15. Data Encryption
16. Benchmarking
17. Full Page Caching
18. Error Logging
19. Application Profiling
20. Scaffolding
21. Calendaring Class
22. User Agent Class
23. Zip Encoding Class
24. Template Engine Class
25. Trackback Class
26. XML-RPC Library
27. Unit testing class
28. Search-engine friendly URLs
29. URI routing yang fleksibel
30. Mendukung hooks, class extension dan plugins
31. Pustaka helper yang lengkap


silahkan berikan masukannya di kolom komentar yang terdapat dibawah. Supaya saya bisa terus belajar untuk memberikan yang terbaik di blog ini. Jika kawan-kawan merasa artikel ini bermanfaat silahkan mengklik tombol share yang terletak di bawah. Dan jika kawan-kawan ingin mendapatkan artikel kami secara real time, silahkan masukkan alamat email Anda di kolom Subscribe, Terima kasih.