Friday, December 10, 2010

PHP Framework

Ketika orang mulai melakukan pemrograman, orang menemukan bahwa ketika membangun suatu aplikasi, ada banyak operasi yang dilakukan secara berulang. Misalkan setiap kali melakukan koneksi ke database, maka kita harus selalu menuliskan kode untuk koneksi ke database. Orang kemudian mulai berfikir bagaimana caranya untuk melakukan penyederhanaan proses-proses ini dengan cara membuat fungsi-fungsi yang membantu pemrograman supaya lebih cepat. Dari sinilah kemudian muncul konsep framework, yaitu suatu pendekatan untuk menyederhanakan pengembangan aplikasi dengan menyediakan fungsi-fungsi yang dibutuhkan, dan melakukan strukturisasi dari fungsi-fungsi tersebut.
Berikut ini adalah beberapa framework pengembangan aplikasi PHP yang ada saat ini:
PHP Framework PHP4 PHP5 MVC Multiple DB's ORM DB Objects Templates Caching Validation Ajax Auth Module Modules EDP
Akelos  Akelos Support PHP4 Akelos Support PHP5 Akelos Support MVC Akelos Support Multiple DB Akelos Support ORM Akelos Support DB Objects Akelos Support Templates Akelos Support Caching Akelos Support Validation Akelos Support Ajax Akelos Support Auth Module Akelos Support Modules -
ash.MVC  - ash.MVC Support PHP5 ash.MVC Support MVC - - ash.MVC Support DB Objects ash.MVC Support Templates - ash.MVC Support Validation - ash.MVC Support Auth Module ash.MVC Support Modules -
CakePHP  CakePHP Support PHP4 CakePHP Support PHP5 CakePHP Support MVC CakePHP Support Multiple DB CakePHP Support ORM CakePHP Support DB Objects - CakePHP Support Caching CakePHP Support Validation CakePHP Support Ajax CakePHP Support Auth Module CakePHP Support Modules -
Code
Igniter
 
CodeIgniter Support PHP4 CodeIgniter Support PHP5 CodeIgniter Support MVC CodeIgniter Support Multiple DB - CodeIgniter Support DB Objects CodeIgniter Support Templates CodeIgniter Support Caching CodeIgniter Support Validation - - - -
DIY  - DIY Support PHP5 DIY Support MVC - DIY Support ORM DIY Support DB Objects DIY Support Templates DIY Support Caching - DIY Support Ajax - - -
eZ Compo nents  - eZ Components Support PHP5 - eZ Components Support Multiple DB - eZ Components Support DB Objects eZ Components Support Templates eZ Components Support Caching eZ Components Support Validation - - - -
Fusebox  Fusebox Support PHP4 Fusebox Support PHP5 Fusebox Support MVC Fusebox Support Multiple DB - - - Fusebox Support Caching - Fusebox Support Ajax - Fusebox Support Modules -
PHP on TRAX  - PHP on TRAX Support PHP5 PHP on TRAX Support MVC PHP on TRAX Support Multiple DB PHP on TRAX Support ORM PHP on TRAX Support DB Objects - - PHP on TRAX Support Validation PHP on TRAX Support Ajax - PHP on TRAX Support Modules -
PHP Dev Shell  - PHPDevShell Support PHP5 - - - - PHPDevShell Support Templates - - PHPDevShell Support Ajax PHPDevShell Support Auth Module PHPDevShell Support Modules -
Php Openbiz  - PhpOpenbiz Support PHP5 PhpOpenbiz Support MVC PhpOpenbiz Support Multiple DB PhpOpenbiz Support ORM PhpOpenbiz Support DB Objects PhpOpenbiz Support Templates - PhpOpenbiz Support Validation PhpOpenbiz Support Ajax PhpOpenbiz Support Auth Module - -
Prado  - Prado Support PHP5 Prado Support MVC Prado Support Multiple DB Prado Support ORM Prado Support DB Objects Prado Support Templates Prado Support Caching Prado Support Validation Prado Support Ajax Prado Support Auth Module Prado Support Modules Prado Support EDP
QPHP  QPHP Support PHP4 QPHP Support PHP5 QPHP Support MVC QPHP Support Multiple DB - QPHP Support DB Objects QPHP Support Templates - QPHP Support Validation QPHP Support Ajax QPHP Support Auth Module QPHP Support Modules QPHP Support EDP
Seagull  Seagull Support PHP4 Seagull Support PHP5 Seagull Support MVC Seagull Support Multiple DB Seagull Support ORM Seagull Support DB Objects Seagull Support Templates Seagull Support Caching Seagull Support Validation Seagull Support Ajax Seagull Support Auth Module Seagull Support Modules -
Symfony  - Symfony Support PHP5 Symfony Support MVC Symfony Support Multiple DB Symfony Support ORM Symfony Support DB Objects - Symfony Support Caching Symfony Support Validation Symfony Support Ajax Symfony Support Auth Module Symfony Support Modules -
WACT  WACT Support PHP4 WACT Support PHP5 WACT Support MVC WACT Support Multiple DB - WACT Support Templates - WACT Support Validation - - WACT Support Modules -
WASP  - WASP Support PHP5 WASP Support MVC - - WASP Support DB Objects WASP Support Templates - WASP Support Validation WASP Support Ajax WASP Support Auth Module WASP Support Modules -
Yii  - Yii Support PHP5 Yii Support MVC Yii Support Multiple DB Yii Support ORM Yii Support DB Objects Yii Support Templates Yii Support Caching Yii Support Validation Yii Support Ajax Yii Support Auth Module Yii Support Modules Yii Support EDP
Zend  - Zend Support PHP5 Zend Support MVC Zend Support Multiple DB Zend Support ORM Zend Support DB Objects - Zend Support Caching Zend Support Validation Zend Support Ajax Zend Support Auth Module Zend Support Modules -
ZooP  ZooP Support PHP4 ZooP Support PHP5 ZooP Support MVC ZooP Support Multiple DB - ZooP Support DB Objects ZooP Support Templates ZooP Support Caching ZooP Support Validation ZooP Support Ajax ZooP Support Auth Module - -

Keterangan:

  • MVC: Mengindikasikan bahwa framework mendukung pendekatan Model-View-Controller. 
  • Multiple DB's: Mengindikasikan bahwa framework mendukung berbagai macam database tanpa perlu merubah apapun. 
  • ORM: Mengindikasikan bahwa framework mendukung Object-Record Mapper, biasanya merupakan implementasi dari ActiveRecord. 
  • DB Objects: Mengindikasikan bahwa framework memasukkan objek database lainnya seperti Table Gate Way. 
  • Templates: Mengindikasikan bahwa framework memiliki template engine sendiri. 
  • Caching: Mengindikasikan bahwa framework memasukkan caching object atau cara lain untuk melakukan caching. 
  • Validation: Mengindikasikan bahwa framework memiliki komponen untuk validasi atau filtering. 
  • Ajax: Mengindikasikan bahwa framework memiliki support terhadap ajax. 
  • Auth Module: Mengindikasikan bahwa framework memiliki modul sendiri untuk menangani otentikasi. 
  • Modules: Mengindikasikan bahwa framework memiliki modul lain seperti RSS feed parser, PDF module dan lainnya.
  • EDP: Event Driven Programming.

No comments: