Sekilas Codeigniter

           Pada zaman sekarang, perkembangan tekonologi dalam bidang web sudah sangat pesat. Sudah banyak web framework yang tersedia untuk memudahkan para developer web dalam men-design atau membuat suatu website. Seperti CodeIgnter, Yii, Laravel, dan masih banyak lagi yang lainnya. Masing-masing web framework dibuat dengan keunggulannya masing-masing. Bagi yang kurang mengerti, framework adalah intruksi-intruksi yang dikumpulkan dalam class dan function-function dengan fungsinya masing-masing untuk memudahkan developer dalam pemanggilannya tanpa harus  menuliskan syntax program yang sama berulang-ulang agar terciptanya source code yang bersih dan terstruktur.
           Pada artikel ini, saya memilih untuk membahas tentang web framework CodeIgniter atau yang biasa disebut CI. CodeIgniter merupakan sebuah web framework yang dikembangkan oleh Rick Ellis dari EllisLab dengan menggunakan Bahasa PHP. Tujuannya adalah membuat pengembangan proyek menjadi lebih cepat dibandingkan dengan menulis kode dari awal (scratch). 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.
          Seperti dengan web framework lainnya, CodeIgniter mempunyai berbagai macam keunggulan yang membuatnya lebih popular dibanding dengan web framework yang lain. Berikut beberapa keunggulan yang dimiliki oleh COdeIgniter:
  1. Free, karena berada dibawah lisensi open source mirip Apache/BSD, kita dapat melakukan apapun dengan CodeIgniter.
  2. Light Weight, sistem inti CodeIgniter memerlukan library yang sedikit. Berbeda sdengan framework lainnya yang membutuhkan banyak sumber daya tambahan.
  3. Fast, menurut dokumentasi, performa yang dimiliki CodeIgniter terbukti cepat  dibandingkan dengan web framework yang lain.
  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 sangat cocok dan bagus untuk proyek yang memfokuskan desainer pada template file dan pembangunan logic dari aplikasi yang dibangun.
  5. Menghasilkan URL yang 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.
  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 juga bisa 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.
CodeIgniter menggunakan Model-View-Controller, yang bertujuan untuk memisahkan logika dan tampilan website. Konsep ini mempunyai keunggulan dimana desainer dapat bekerja pada template file, sehingga redundansi kode presentasi dapat diperkecil. Berikut adalah konsep Model-View-Controller yang diterapkan di CodeIgniter:
  1. Model menggambarkan struktur data. Biasanya kelas model akan berisi fungsi yang digunakan untuk mengambil, menambah, dan memperbaharui informasi yang ada di database. 
  2. View adalah informasi yang diperlihatkan kepada user. View adalah halaman web yang terdiri dari HTML, CSS dan Javascript. Akan tetapi pada CodeIgniter, view dapat juga sebagai potongan halaman seperti header atau footer. Bahkan dapat juga halaman RSS atau tipe halaman lainnya.
  3. Controller adalah perantara Model, View, dan resource lainya yang dibutuhkan untuk menangani HTTP request dan menghasilkan halaman web.
Tapi pada CodeIgniter, developer bisa saja tidak menggunakan Model dan cukup menggunakan Controller dan View.

Kelebihan CodeIgniter
  1. Berukuran sangat kecil. File download nya hanya sekitar 2MB, itupun sudah include dokumentasinya yang sangat lengkap.
  2. Dokumentasi yang bagus. Saat anda mendownloadnya, telah disertakan dengan dokumentasi yang berisi pengantar, tutorial, bagaimana panduan penggunaan, serta referensi dokumentasi untuk komponen-komponennya.
  3. Kompitabilitas dengan Hosting. CodeIgniter mampu berjalan dengan baik  pada hampir semua  platfom hosting. 
  4. 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 ketiganya akan lebih baik.
  5. Kinerja yang baik. Codeigniter merupakan framework yang tercepat hingga saat ini.
  6. Sangat mudah diintegrasikan. CodeIgniter sangat update tentang pengembangan library saat ini.
  7. Sedikit Konfigurasi. Konfigurasi CodeIgniter terletak di folder aplication/config.
  8. Mudah dipelajari. Selain memiliki dokumentasi yang lengkap, CodeIgniter juga punya berbagai forum. 
Kekurangan CodeIgniter
  1. CodeIgniter tidak ditujukan untuk pembuatan web dengan skala besar.
  2. Library yang sangat terbatas. Hal ini dikarenakan sangat sulit mencari plugin tambahan yang terverifikasi secara resmi.
  3. Belum adanya editor khusus CodeIgniter, sehingga dalam melakukan create project dan modul-modulnya harus berpindah-pindah folder.

Comments

Popular post