Framework adalah dasar dengan tingkat kompleksitas yang
ditentukan (berdasarkan tingkat pengguna) yang dapat diperluas oleh pemrogram
menggunakan kode mereka sendiri. Ini mungkin termasuk seperangkat perpustakaan
perangkat lunak, kompiler, juru bahasa, atau API. Secara umum, ia menyediakan
lingkungan yang memfasilitasi jenis pemrograman tertentu untuk proyek
pengembangan perangkat lunak. Berikut ini adalah 3 framework yang akan saya
jelaskan :
1. Yii
Yii adalah Framework open source berbasis php. Nama Yii singkatan
dari "Yes It Is!". Seperti juga Framewor PHP pada umumnya, Yii juga
telah mengadopsi konsep MVC - Model, View, Controller dalam struktur
pemogramanya.
1.2 Fitur
- Arsitektur programing menggunakan konsep Model, View, Controller atau biasa disebut MVC.
- Object Relational Mapping atau ORM merupakan salah satu fitur di dalam Yii yang mengurusi pengelolaan database, jika kita lihat secara spesifik maka Yii sebenarnya menyediakan mekanisme seperti DAO (Data Access Object), Query Builder, Active Record (ORM) dan Database Migration. Dengan ORM pekerjaan developer menjadi terbantu karena tidak lagi menulis query SQL yang rumit, cukup dengan memanggil fungsi-fungsi tertentu di dalam library Yii.
- Form input dan Validasi adalah fitur yang mengatur inputan pada suatu form dan sekaligus membantu melakukan validasi pada inputan.
- Widget merupakan konsep di Yii yang menyediakan komponen-komponen user interface yang siap pakai.
- Autentikasi hak akses dan Autorisasi loging dan logout.
- Masalah tampilan (view) Yii menggunakan konsep skinning kita bisa meng-costumize tampilan komponen user interface di aplikasi kita menggunakan CSS sedangkan dengan konsep Theming kita bisa mengganti-ganti seluruh tampilan aplikasi.
- Web service, pada Yii dapat meng-generate spesifikasi WSDL service secara otomatis.
- Translasi, Yii menyediakan fitur penterjemah untuk pesan, tanggal dan format waktu sesuai zona waktu dan daerah.
- Caching, dengan fitur caching akses terhadap aplikasi yang dibangun menggunakan Yii akan
- lebih ringan ketika diakses oleh penggunanya.
- Pesan Error dan Logging yang ada pada Yii bisa memilih untuk menampilkan langsung ataupun disimpan ke suatu file di server.
- Security di dalam Yii membantu dalam mencegah serangan-serangan seperit SQL Injection, XSS, CSRF, Cookie Tampering dll.
- 3rd Party, Yii telah di desain sedemikian rupa sehingga kita bisa memasang library external dari pihak ketiga untuk di sematkan dalam aplikasi.
- Extension, Yii memiliki segudang extensions. Extension sendiri merupakan kontribusi dari pengguna-pengguna Yii dengan membuat widget, library ataupun component yang bisa dipakai dan belum ada di Yii secara built-in.
- Yii bisa didokumentasikan
2. CakePHP
CakePHP adalah framework web open-source. Framework Ini
mengikuti pendekatan model-view-controller (MVC) dan ditulis dalam PHP,
mengikuti konsep Ruby on Rails, dan didistribusikan di bawah Lisensi MIT. CakePHP
menggunakan konsep rekayasa perangkat lunak yang terkenal dan pola perancangan
perangkat lunak, seperti konvensi mengenai konfigurasi, model-view-controller,
catatan aktif, pemetaan data asosiasi, dan pengontrol depan. CakePHP juga
menjadi salah satu framework pilihan yang memungkinkan seorang dpengembang web
untuk membuat sebuah aplikasi dengan karakter pengembangan RAD (Rapid
Application Development), yang memungkinkan untuk digunakan dan dikembangkan
menjadi aplikasi lain yang lebih kompleks.
2.2 Fitur
- Komunitas yang aktif dan bersahabat.
- Lisensi yang fleksibel.
- Kompatibel dengan PHP versi 4 dan 5.
- Operasi CRUD yang terintegrasi untuk interaksi dengan basis data.
- Scaffolding aplikasi.
- Otomatisasi pembuatan code (code generation).
- Arsitektur MVC.
- Request dispatcher dengan URL yang kustom, rapih dan adanya rute.
- Validasi data yang terintegrasi.
- Sistem templating yang cepat dan fleksibel (sintaks PHP, tersedia helpers).
- View Helpers untuk AJAX, JavaScript, HTML Forms dan banyak lagi.
3. CodeIgniter
CodeIgniter adalah framework aplikasi yang berfungsi untuk
membuat halaman atau aplikasi web berbasis PHP. CodeIgniter merupakan aplikasi
sumber terbuka yang berupa framework PHP dengan model MVC (Model, View,
Controller) untuk membangun website dinamis dengan menggunakan PHP.
3.2 Fitur
·
Model-View-Controller
Based System
CodeIgniter
menggunakan sistem MVC untuk menemukan model yang kompleks dan membantu Anda
membuat aplikasi dengan mudah dengan menggunakan kontroler dan tampilan. Ini
membantu pengembang untuk membangun perpustakaan inti untuk sistem dan
memungkinkan Anda mengintegrasikan skrip yang ada dengan database Anda sendiri.
·
Penanganan
Masalah
Fitur
ini membantu Anda menulis kode dalam satu baris dengan menggunakan sistem
kerangka validasi yang efektif. Ini menghasilkan kode tanpa kesalahan dan
memastikan berbagai struktur kontrol ditempatkan dalam bentuk HTML.
·
Validasi
Formulir
Fitur
ini membantu Anda menulis kode dalam satu baris dengan menggunakan sistem
kerangka validasi yang efektif. Ini menghasilkan kode tanpa kesalahan dan
memastikan berbagai struktur kontrol ditempatkan dalam bentuk HTML.
·
Migrasi
Pengembang
dapat mengelola pembaruan skema database di berbagai bidang aplikasi web dengan
mudah dengan bantuan aspek migrasi. Migrasi dari satu server ke server lain
mudah dan tidak merepotkan di CodeIgniter.
·
Konfigurasi
dan Customizable
Aspek ini
membantu pengembang untuk menciptakan apa yang mereka butuhkan untuk
dikembangkan berdasarkan aplikasi web. Anda bisa mengedit file yang ada di
CodeIgniter dengan mudah dan tidak membingungkan pemula untuk mengembangkan
kehidupan baru. Selain itu, konfigurasi dan file yang mudah disesuaikan dan
mudah dilakukan dalam kerangka kerja ini.
Jadi, perbandingan dari 3 framework ini adalah yii
menggunakan konsep MVC - Model, View, Controller. CakePHP menggunakan konsep rekayasa
perangkat lunak yang terkenal dan pola perancangan perangkat lunak. Sedangkan, CodeIgniter
menggunakan model MVC (Model, View, Controller) untuk membangun website dinamis
dengan menggunakan PHP. Persamaannya adalah, baik Yii, CakePHP, dan Codelgniter
sama-sama menggunakan PHP.
Referensi :