Sunday, October 19, 2008

Mengenal Zend Framework - PHP MVC Framework

Struts adalah biang MVC di dunia pemrograman Java / J2EE, kalau PHP sekarang sudah ada Zend neh... bagi yang belum tahu Zend bisa baca neh.

Di dalam dunia PHP sebenarnya banyak juga framework-framework yang bermunculan.
Saat ini framework yang terkenal adalah CakePHP, Prado, CodeIgniter, Symfony, dan Zend Framework, di mana masing-masing memiliki keunggulannya tersendiri dan di antara framework itu Zend merupakan salah satu framework yang

mengimplementasikan MVC pattern untuk pengembangan aplikasi web di mana Zend Framework memisahkan bagian yang menjadi controller, model dan view.
Pada artikel ini penulis akan memperkenalkan salah satu framework populer tersebut yang dibuat oleh Zend sendiri yang merasa perlu untuk membuat suatu framework serta library yang dibangun di atas teknologi php5 dengan mendayagunakan kelebihan pemrograman berorientasi objek yang telah disediakan serta menghasilkan library yang lebih maju dan lengkap untuk mendukung kebutuhan developer php pada saat ini yang mulai beralih ke pembuatan aplikasi web 2.0.


Definisi Zend Framework menurut dokumentasinya:

“Zend Framework adalah framework open source dan berkualitas tinggi untuk membangun aplikasi web dan web service dengan PHP”

Zend Framework memiliki keunggulan-keunggulan seperti berikut:

  • Dibuat oleh Zend, pengembang engine PHP
  • Dibangun diatas teknologi php 5
  • Lisensi Open Source berbasis BSD yang fleksibel baik untuk pengembangan aplikasi open source maupun komersial
  • Dokumentasi lengkap (lebih dari 500 halaman)
  • Proses pengembangan Zend Framework menyertakan unit test yang lengkap, mencakup 84% kode yang ada
  • Library yang menyediakan fungsi yang lengkap sehingga hampir semua kebutuhan pengembangan aplikasi web dapat terpenuhi
  • Mendukung pengembangan aplikasi MVC
  • URL yang bagus dan search engine friendly

Macam-macam library yang disediakan oleh Zend Framework:

  • Core Infrastructure
    • Zend_Cache, Zend_Config, Zend_Console_Getopt, Zend_Log, Zend_Memory
    • Zend_Debug, Zend_Environment, Zend_Loader, Zend_Registry, Zend_Version
    • Zend_Filter, Zend_Validate
  • Documentation
    • Improved correctness, readability, and more examples
    • Additional coverage by translation teams
    • Web application development tutorial
  • Internationalization (i18n) & Localization (l10n)
    • Zend_Date
    • Zend_Locale
    • Zend_Measure
    • Zend_Translate
  • Mail, Formats, & Search
    • Zend_Json, Zend_Pdf
    • Zend_Mail, Zend_Mime
    • Zend_Search_Lucene
  • Model-View-Controller (MVC)
    • Zend_Controller, Zend_Controller_Action, Zend_Controller_Dispatcher, Zend_Controller_Plugin, Zend_Controller_RewriteRouter, Zend_View
    • Zend_Http_Request, Zend_Http_Response
  • Web & Web Services
    • Consuming services: Zend_Feed, Zend_Rest_Client, Zend_Service, Zend_XmlRpc_Client, Zend_Gdata, Zend_Http_Client
    • Exposing services: Zend_Http_Server, Zend_Rest_Server, Zend_Server_Documentor, Zend_Server_Reflection, Zend_Soap_Server, Zend_XmlRpc_Server
    • Zend_Uri

Jadi hampir semua yang Anda perlukan sebagai pengembang aplikasi web masa depan (Web 2.0) telah disediakan oleh PHP.
Pertama kali bertemu dengan Zend, penulis merasa familiar dengan konsep framework ini, karena sedikit ada kemiripan dengan Struts di mana ada Controller, Action lalu konsep forward ke view yang sesuai.


No comments:

Post a Comment