Â
Bagi programmer PHP pasti pernah tahu apa itu Code Igniter atau Laravel, atau mungkin sedang menggunakan salah satu dari framework tersebut. Sebelumnya apa itu framework, dan apa fungsinya? Framework atau kerangka kerja menyediakan fungsionalitas/solusi untuk area masalah tertentu. Atau menurut Wikipedia, merupakan abstraksi di mana kode umum yang menyediakan fungsionalitas generik dapat diganti secara selektif atau khusus oleh kode pengguna yang menyediakan fungsionalitas tertentu.
Bagi programmer PHP, kita mengenal framework seperti Yii, Zend, CakePHP, Symfony, dan yang cukup terkenal, yaitu Code Igniter dan Laravel. Bahayanya, ada dari tuntutan kerja dan rekan-rekannya yang mewajibkan para programmer PHP pemula untuk membuat program dengan memilih salah satu framework tersebut. Mana yang akan dipilih?
Â
Codeigniter
CodeIgniter adalah sebuah framework PHP yang dapat mempercepat programer dan developer dalam membuat dan mengembangkan sebuah aplikasi web. Ada banyak library dan helper yang berguna pada framework CI yang dapat memudahkan pengembangan web.
Keuntungan dalam menggunakan CI adalah sebagai berikut.
Â
1. Menghemat Waktu Pengembangan
Dengan struktur dan library yang telah disediakan oleh framework sehingga dapat menghemat waktu menulis kode.Â
2. Reuse of Code
Dengan menggunakan framework, pekerjaan programmer akan memiliki struktur yang baku, sehingga lebih mudah untuk dipahami dan diselesaikan jika terdapat masalah atau error.
3. Bantuan Komunitas
Ada komunitas-komunitas yang siap membantu jika ada permasalahan. Selain itu, juga dapat membagi ilmu sehingga dapat meningkatkan kemampuan pemrograman.
4. Kumpulan Best Practice
Sebuah framework merupakan kumpulan best practice yang sudah teruji sehigga dapat meningkatkan kualitas kode programmer.
Â
Sebagai  web  framework  yang  populer  yang  menggunakan  bahasa  pemrograman  PHP, CodeIgniter mempunyai berbagai keunggulan seperti yang disebutkan di dokumentasinya. Beberapa keunggualan tersebut adalah sebagai berikut.
Â
1. FreeÂ
Berada dibawah lisensi open sourcemirip 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. 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.
5. Extensible
Programmer dapat menambahkan library atau helperyang kita ciptakan sendiri ke dalam CodeIgniter. Selain itu kita dapat juga menambahkan fitur lewat class extension atau system hooks.
6. Thoroughly Documented
Hampir semua fitur, library, dan  helperyang ada di CodeIgniter telah terdokumentasi  dengan lengkap  dan  tersusun  dengan  baik.  Ketika  mendapatkan unduhan CodeIgniter, dokumentasinya sudah tersedia dan siap digunakan.
7. Mempunyai  komunitas  yang  ramah
Komunitas  CodeIgniter  sangat  ramah  dan  siap membantu pengguna  CodeIgniter  pemula  atau yang  sudah  mahir. Â
Laravel
Laravel adalah framework PHP untuk aplikasi web yang ditulis oleh Taylor Otwell. Framework Laravel ditulis dengan kombinasi fitur-fitur dan sintak-sintak yang sangat ekspresif sehingga membuat framework ini meraih popularitas baru.
Â
Laravel memberikan hal baru yang jarang diperhatikan oleh framework-framework lainnya, yaitu aspek clean code  dan expressiveness. Selain itu, framework laravel juga clean dan classy, kodenya singkat, mudah dimengerti dan ekspressif. Laravel dikembangkan secara khusus untuk bahasa PHP versi 5.3 ke atas dan memanfaatkan berbagai kelebihan fitur yang dimiliki PHP versi 5.3. Tidak ada backward compatibility dengan PHP versi sebelumnya. Beberapa fitur yang penting yang ada pada Laravel adalah namespace, anonymous function, dan autoloading. Dengan namespace dapat membuat dua kelas dengan nama yang sama. Coba baca di http://id-laravel.com . Anonymous function memungkinkan Anda membuat inline function, fungsi tanpa nama, seperti yang biasa Anda temui di JavaScript.
Â
Dalam hal routing, Laravel juga memiliki kode yang simple. Pada dasarnya membangun website hanyalah masalah request-response. Ada request terhadap halaman x, maka perlu disediakan response x. oleh karena itu, Laravel menerapkan prinsip routing yang sangat simple.
Beberapa programmer web yang berpengalaman dalam hal framework, merasakan bahwa Laravel memiliki tiga point penting, yaitu sebagai berikut.
Â
1. Simple
Laravel mudah untuk dipahami dan dilaksanakan. Jika programmer menyukai framework CI, maka programmer tersebut akan menyukai framework Laravel.
2. Elegan
Sebagian besar fungsi Laravel bekerja secara lancer dengan konfigurasi yang hanya sedikit dan mengandalkan konvensi standar industry untuk mengurangi code-bloat.
3. Well-documented
Dokumentasi laravel lengkap dan selalu upadate jika ada yang terbaru. Creator framework membuat point untuk memperbarui dokumentasi sebelum merilis versi baru dengan tujuan untuk mematikan orang-orang yang belajar framework selalu memiliki dokumentasi terbaru. (menurut Community-laravel).
Â
Pada dasarnya, CI, Laravel, CakePHP, Yii, Symfony, Zend, dan framework PHP lainnya awalnya adalah program PHP murni. Programmer master tidak akan bingung menentukan karena pakai PHP murni tanpa framework pun mereka dapat menciptakan aplikasi yang luar biasa.
Â
Jadi jangan khawatir, apapun frameworknya, kita tetap dapat membuat proyek besar dengannya. Berdebat masalah framework hanya menunjukkan kita masih sangat pemula karena kebanyakan orang-orang baik yang membuat framework tersebut rela membuang waktunya tanpa patokan bayaran demi memudahkan urusan kita.
Â
Comments (0)
No comments yet. Be the first to comment.