Zend หลายคนคงคุ้นหูแต่นึกไม่ออกว่าคืออะไร หากถามว่ารู้จัก PHP มั๊ย หลายคนก้อร้องอ๋อขึ้นมาทันที Zend เป็นบริษัทที่พัฒนา Zend Platform (PHP) และผลิตภัณฑ์อื่นๆ เช่น Zend Optimizer, Zend Gard, Zend Studio เป็นต้น เอาล่ะวันนี้ผมพามาชำแหละผลิตภัณฑ์อีกตัวหนึ่งซึ่งได้รับความนิยมไม่แพ้กัน และที่สำคัญเป็นจุดกำเนิดการพัฒนาเว็บแอพลิเคชั่นแบบ MVC ของ PHP เลยทีเดียว (ไม่นับ CakePHP นะ) ผลิตภัณฑ์ที่ว่าคือ Zend Framework ปัจจุบันพัฒนามาจนถึงรุ่น 1.7 แล้วครับ ขึ้นชื่อว่า Framework ก้อคงจะทราบกันดีอยู่แล้วว่าจะต้องมีส่วนขยายและคอมโพเน้นที่ไม่มีใน PHP ปกติอย่างแน่นอน เอาล่ะวันนี้เราจะมาดูกัน
ทำความรู้จักกับ Zend Framework กันก่อน Zend Framework เป็นส่วนขยายของ PHP ซึ่งพัฒนาบนพื้นฐานของ object oriented programming โดยมุ่งพัฒนาให้เกิดความปลอดภัย มีสเถียรภาพ และง่ายต่อการพัฒนาแอพลิเคชั่นในแบบ Web 2.0 และ Web Service นอกจากนี้ยังรวมเอา APIs จากบริษัทชึ้นนำอย่าง Google, Amazon, Yahoo, Flickr และ APIs สำหรับระบบแคตตาล็อกสินค้าอย่าง StrikeIron และ ProgrammableWeb เป็นต้น Zend Framework พัฒนาโดยอาศัยหลักคิดแบบเรียบง่าย เพื่อให้เว็บแอพลิเคชั่นที่พัฒนามีขนาดเล็กและเบา ไลบรารีและคอมโพเน้นไม่ขึ้นต่อกันมากนัก ซึ่งคอมโพเน้นประมาณ 4 ใน 5 ของเว็บแอพลเคชั่นจะถูกรวบรวมไว้ให้แล้วนักพัฒนาเพียงพัฒนาเพิ่มอีก 20% ก้อจะได้เว็บแอพลิเคชั่นที่คุณหรือลูกค้าต้องการ ซึ่งทำให้การพัฒนาโปรแกรมทำได้รวดเร็วยิ่งขึ้น
คุณสมบัติเด่นที่ Zend Framework มีให้ใช้พัฒนาเว็บแอพลิเคชั่น
- AJAX และสนับสนุน JSON
- Search ใช้ Lucense search engine
- Syndication สามารถส่งออกรูปแบบข้อมูลและง่ายต่อการอ่านข้อมูลที่เว็บ 2.0 กำลังเป็นที่นิยม
- Web Services สนับสนุนการพัฒนา Web Service และการให้บริการ Web Service
- มี OO PHP5 Class และ Library ที่มีคุณภาพสูง เพื่อให้ง่ายพัฒนาแอพลิเคชั่นซึ่งสนับสนุน design pattern, unit testing
คอมโพเน้นที่ Zend Framework มีให้
- MVC
(Model-View-Controller) ได้แก่ Zend_Controller, Zend_Controller_Action,
Zend_Controller_Dispatcher, Zend_Controller_Plugin,
Zend_Controller_RewriteRouter, Zend_View, Zend_Http_Request,
Zend_Http_Response
- Database ได้แก่ Zend_Db, Zend_Db_Table
- Internationalization (i18n) and Localization (l10n) ได้แก่ Zend_Date, Zend_Locale, Zend_Measure, Zend_Translate
- Authentication, Authorization และ Session management ได้แก่ Zend_Acl, Zend_Authentication, Zend_Session
-
Web และ Web Service ได้แก่ Zend_Feed, Zend_Rest_Client, Zend_Service,
Zend_XmlRpc_Client, Zend_Gdata, Zend_Http_Client, Zend_Http_Server,
Zend_Rest_Server, Zend_Server_Documentor, Zend_Server_Reflection,
Zend_Soap_Server, Zend_XmlRpc_Serve และ Zend_Uri
- Mail, Format และ Search ได้แก่ Zend_Json, Zend_Pdf, Zend_Mail, Zend_Mime, Zend_Search_Lucene
-
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
ใครใช้ Zend Framework บ้าง
- Bwin Games AB
- FOX Interactive Media
- Magento
- Indianapolis Motor Speedway
- Right Media
- IBM
สถิติเกี่ยวกับ Zend Framework
- ดาวน์โหลดมากกว่า 7 ล้านครั้ง
- มี Contributor มากกว่า 500 ราย
- มีหน้าเว็บที่กล่าวถึง Zend Studio มากกว่า 1000 หน้า
- มีตัวอย่างมากกว่า 500 ตัวอย่าง
- มีจำนวน Hits มากกว่า 750 Hits ใน Technorati
- มีโครงการซอฟต์แวร์บน SourceForge ที่ใช้ Zend Framework เป็นพื้นฐานในการพัฒนา มากกว่า 60 โครงการ
- มีโครงการซอฟต์แวร์บน Google Code ที่ใช้ Zend Framework เป็นพื้นฐานในการพัฒนา มากกว่า 30 โครงการ
- มากกว่า 30000 Issues ที่ได้รับการแก้ไขในระบบ Issue Tracker
เขียนมายาวยืดมีใครใช้ Zend Framework กันบ้าง ขอเสียงหน่อยครับ เกือบลืมครับ ดาวน์โหลด Zend Framework ได้ที่ http://framework.zend.com
ที่มา: thaiopensource.org