Yii adalah kerangka kerja aplikasi web sumber terbuka berbasis PHP.[2] Nama Yii (dieja sebagai /i:/) singkatan dari "Yes It Is!". Seperti juga kerangka kerja PHP pada umumnya, Yii juga telah mengadopsi konsep MVC - Model, View, Controller dalam struktur pemrogramannya.[2]
Sejarah
Proyek pengembangan Yii dimulai sejak 1 Januari 2008 oleh Qiang Xue programer asal Tiongkok.[3] Pada awalnya Yii dikembangkan menggunakan bahasa kerangka kerja PRADO, setelah mengalami beberapa koreksi dan penyempurnaan kurang lebih setahun, pada 3 Desember 2008, Yii 1.0 secara resmi dirilis ke publik.[3]
Fitur
Berikut ini fitur-fitur yang terdapat pada Yii versi terbaru:
- Arsitektur programing menggunakan konsep Model, View, Controller atau biasa disebut MVC.[4]
- 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.[4]
- Form input dan Validasi adalah fitur yang mengatur inputan pada suatu form dan sekaligus membantu melakukan validasi pada inputan.[4]
- Widget merupakan konsep di Yii yang menyediakan komponen-komponen user interface yang siap pakai, misalnya data grid, autocomplete, tree view dan lain-lain. Adapun widget-widget ini ada yang terintegrasi dengan library Jquery sehingga memungkinkan untuk mekanisme AJAX.[4]
- Autentikasi hak akses dan Autorisasi loging dan logout.[4]
- 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.[4]
- Web service, pada Yii dapat meng-generate spesifikasi WSDL service secara otomatis.[4]
- Translasi, Yii menyediakan fitur penterjemah untuk pesan, tanggal dan format waktu sesuai zona waktu dan daerah.[4]
- Caching, dengan fitur caching akses terhadap aplikasi yang dibangun menggunakan Yii akan lebih ringan ketika diakses oleh penggunanya.[4]
- Pesan Error dan Logging yang ada pada Yii bisa memilih untuk menampilkan langsung ataupun disimpan ke suatu file di server.[4]
- Security di dalam Yii membantu dalam mencegah serangan-serangan seperit SQL Injection, XSS, CSRF, Cookie Tampering dll.[4]
- 3rd Party, Yii telah di desain sedemikian rupa sehingga kita bisa memasang library external dari pihak ketiga untuk di sematkan dalam aplikasi.[4]
- 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.[4]
- Dokumentasi Yii.[4]
Referensi