Mencicipi Cake PHP

HP merupakan sebuah bahasa pemrograman yang memungkinkan seorang developer membuat sebuah aplikasi berbasis web yang powerful. Seiring dengan semakin berkembangnya kebutuhan akan aplikasi berbasis PHP, dan semakin kompleksnya pengembangan aplikasi, dibutuhkan sebuah kerangka kerja (framework), yang terdiri dari file-file pustaka berupa class-class PHP yang bisa diincludekan dalam aplikasi yang sedang kita kembangkan.

Pengembangan aplikasi berbasis konvensional seperti ini tidaklah keliru, namun akan menjadi masalah besar apabila aplikasi ini membutuhkan banyak fitur dan pengembangan di kemudian hari. Apalagi pada PHP sudah semakin mendukung penerapan OOP. Bisa jadi spagheti code. Ya, framework digunakan untuk mendukung dalam pengembangan aplikasi kompleks. Salah satu framework yang akan dibahas adalah cakePHP.

CakePHP adalah free, open source, rapid development framework bagi PHP. Maksud dengan rapid development framework adalah memungkin bagi pengembang untuk membuat aplikasi yang kompleks dengan cepat menggunakan framework. CakePHP mempunyai hubungan darah yang cukup dekat dengan framework Ruby on Rails. Tujuan utama cakePHP adalah untuk memberikan Anda bekerja secara terstruktur dan cepat tapi tetap fleksibel.

Beberapa hal yang menjadi pilihan menggunakan cakePHP adalah :

  • Dokumentasi dan dukungan yang cukup banyak, komunitas, milis dan lain sebagainya.
  • Kompatibel dengan PHP versi 4 dan 5.
  • Terintegrasi CRUD pada interaksi database.
  • Scaffolding yang melakukan generate CRUD.
  • Code generation
  • Arsitektur MVC
  • Built-in validation
  • Template yang cepat dan Fleksibel
  • Helper berupa Ajax, Javascript dan HTML Forms
  • Komponen email, cookies, security dan Request Handling
  • ACL (Access Control List) yang fleksibel, berupa pengaturan user dan hak aksesnya
  • Localization

Sedikit mengenal apa itu MVC? MVC merupakan cara untuk memecah aplikasi atau bahkan mungkin hanya bagian dari aplikasi menjadi tiga bagian : model, view, dan controller. MVC secara sederhana mengadopsi konsep input, proses dan output seperti di bawah ini :

Input – Proses – Output

Controller – Model – View

Mengapa menggunakan MVC? Karena ini akan mengubah aplikasi menjadi maintainable, modular, cepat. Mengembangkan aplikasi dengan cara terpisah akan membuat aplikasi Anda menjadi lebih ringan. Penambahan fitur baru atau pun mengubahnya akan dapat dilakukan dengan cepat.

Dukungan Untuk CakePHP

Panduan Untuk “Memasak”

http://book.cakephp.org

Bagi Anda yang pemula, disinilah terdapat manual yang dapat membantu Anda untuk memulai.

API (Application Programming Interface)

http://api.cakephp.org/1.2

API (Application Programming Interface) merupakan dokumentasi yang paling memungkinkan bagi Anda untuk mengetahui kinerja dan fungsi yang terdapat didalam framework cakephp.

Channel IRC

#cakephp @irc.freenode.net

Jika Anda masih menemui kesulitan, cobalah bergabung ke komunitas IRC channel. Beberapa tim developer biasanya berada disana, yang bisa dijadikan tempat bertanya langsung.

The Bakery

http://bakery.cakephp.org

CakePHP Bakery merupakan sumber tutorial, studi kasus, dan contoh kode yang bisa Anda jadikan referensi dari komunitas. Bahkan Anda pun bisa berbagi didalamnya.

CakeForge

http://www.cakeforge.org

CakeForge merupakan sumber bagi para pengembang. Disini terdapat source proyek CakePHP yang sedang berjalan, dan Anda pun bisa bergabung untuk berkontribusi didalamnya.

Situs Resmi Cakephp

http://www.cakephp.org

Inilah situs resmi dari CakePHP. Disini Anda akan terhubung dengan tool yang digunakan oleh developer, screencast, peluang untuk donasi dan download.

Milis

http://groups.google.com/group/cake-php

CakePHP juga memiliki komunitas yang aktif, sehingga mereka pun memiliki milis pendukung. Disini bisa menjadi tempat nara sumber yang bermanfaat untuk bertanya, menjawab dan bahkan berkumpul dengan para pengguna cakePHP lainnya.

    Category

    • (27)
    • (24)
    • (20)
    • (11)

    Category

    • (27)
    • (24)
    • (20)
    • (11)

    Category

    • (27)
    • (24)
    • (20)
    • (11)