CakePHP adalah sebuah PHP framework open source yang berarti lisensinya gratis. CakePHP merupakan struktur dasar untuk programmer dalam mengembangkan web applications. Tujuan utamanya adalah membantu mengembangkan aplikasi dengan cepat tanpa kehilangagn fleksibelitas. Beberapa fitur dalam CakePHP:
- Active, dengan adanya komunitas
- Flexible licensing
- Compatible dengan PHP versi PHP 5.2.8 atau di atasnya
- Mendukung CRUD (Create,Update,Delete) untuk berinteraksi dengan database
- Application scaffolding
- Code Generation
- MVC (Model, View, Controller) Architecture.
- Request Dispatcher with clean, Custom URLs and Route.
- Built-in validation
- Template Cepat dan flexible dengan dibantu helpers
- View helpers for AJAX, JavaScript, form HTML dan lainnya
- Email, Cookie, Security, Session, dan Components untuk Request Handling
- Flexible ACL (Access Control List)
- Data sanitization
- Flexible Caching
- Localization
Dan ada banyak lainnya yang bisa kamu kembangkan.
Dalam menggunakan cakePHP (yang juga merupakan PHP
framework) yang wajib untuk dipahami adalah tentang MVC (Model, View,
Controller) berikut penjelasan Masing-masing bagian:
Model
Model merepresentasikan bagian logika bisnis dalam aplikasi
yang dikembangkan. Model bertanggung jawab untuk mendapatkan data dan
mengkonversinya sesuai dengan konsep aplikasi seperti processing, validating,
associating dan lain-lain.
Sekilas object Model dapat dilihat pada interaksi layer
pertama dengan database yang digunakan aplikasi. Tetapi pada umumnya Model
bertindak untuk konsep utama yang diimplementasikan pada aplikasi.
Sebagai contoh kasus pada sebuah social network, Model layer
akan menangani tugas seperti menyimpan data user, menyimpan friends
associations, storing and retrieving user photos, menemukan new friends dll. Jadi
object pada Model adalah Friend, User, Comment atau Photo.
View
View menampilkan data yang telah di tangani oleh Model. Data yang telah dipisah-pisah atau diklasifikasikan
oleh objek Model (seperti contoh diatas adalah Friend, User) akan digunakan
untuk menampilkan informasi berupa interface yang dibutuhkan.
Sebagai contoh, Model
data yang telah mengolah data akan memberikan data kepada View untuk ditampilkan
pada halaman HTML atau berupa format XML yang akan diberikan pada user.
View layer tidak terbatas pada HTML atau text data (XML),
tetapi dapat digunakan untuk mengirim/menampilkan banyak macam format yang
dibutuhkan seperti video, music, documents dan format lainnya.
Controller
Controller menangani request dari users. Controller
bertanggungjawab untuk memberikan/menyampaikan kembali dengan bantuan atau
diantara Model dan View.
Controller dapat berfungsi sebagai pengatur semua resources
yang dibutuhkan untuk melengkapi sebuah task/tugas yang diserahkan kepada ‘workers’
yang tepat. Controller menunggu permintaan dari clients/user, mengecek validasi
yang sesuai dengan rule autentikasi atau autorisasi. Menyerahkan data yang
telah didapat atau memproses ke Model, dan memilih tipe tampilan data yang akan
diterima oleh client/user. Tahapan terakhir adalah menyerahkan proses tampilan
kepada View. Berikut gambar perputaran
request pada CakePHP:
No comments :
Post a Comment