米Zend Technologiesは2日、「Zend Framework」のバージョン1.0を公開したことを発表した。Zend FrameworkはPHPベース、オープンソースのアプリケーションフレームワークで、Webアプリケーション開発を効率化するもの。
2005年10月に開催されたZend Conferenceで開発意向表明が行われ、2006年4月にはプレリリース版が公開されている。Zend Frameworkの開発には230名の個人およびGoogle、IBMおよびZendといった企業の支援を受けたアクティブな貢献者が参加した。プレリリース版のダウンロード数は100万回以上にのぼるという。今回発表された正式版は、こちらからダウンロードできる。
同社の共同CTOおよび共同設立者のAndi Gutmans氏は、Zend Frameworkの目的を、「WebアプリケーションおよびWeb Servicesのための高品質なオープンソースフレームワークを提供すること」だと位置づけている。
Zend Frameworkは、商用利用にも向くとされる。その理由として、以下のようなことが挙げられている。
- フレームワークの開発に携わった開発者たちはコードをApacheスタイルの"Contributor License Agreement(CLA)"ライセンスで配布しているため、Zend Frameworkをベースにアプリケーションを開発する企業は他社の知的資産侵害を心配する必要はない。
- Zend Framework自体はBSDライセンスで配布されており、フレームワークのコードをユーザーのWebアプリケーションに組み込むことに関する制約もない。
- "use-at-will"(使いたくなったときに使う)アーキテクチャにより、ユーザーはZend Frameworkを段階的に適用していくことが可能になる。他のフレームワークのような「全面的に使うか、いっさい使わないか」というロックイン型のアーキテクチャではなく、必要な機能だけを使うことができる。
Zend Frameworkは「簡潔さ」「オブジェクト指向のベストプラクティス」「軽量なアーキテクチャ」に基づいて設計されており、安全で信頼性が高く、高度にインタラクティブなWebアプリケーションの開発を迅速化する。フレームワークに含まれるコンポーネントは以下の通り。
MVCアプリケーションフレームワーク
Model(モデル)/View(ビュー)/Controller(コントローラ)アーキテクチャにより、ビジネスロジックとユーザインタフェースデザインの分離が実現する。Webアプリケーション開発における業界のベストプラクティスも組み込まれている。JSONサポートにより、AJAXプログラミングも容易になる。
データベース・サポート
データベース非依存のオブジェクト指向インタフェースにより、各種のRDBMSにアクセスできる。サポートされるDBは、IBM DB2、MySQL、Oracle DB、Microsoft SQL Server、PostgreSQL、SQLiteなど。
国際化機能
Zend Fremeworkは、PHP5ベースのWebアプリケーションの国際化を容易にする先進的かつシンプルなソリューションが含まれる。
Web Services
Web Serviceインタフェースを通じてPHPからサービスを利用/公開するためのクラスが提供される。フィードに関しては、ATOM、RSS、Google Data APIs、クライアント/サーバではREST、HTTP、XML-RPC、サービスではAmazon、Yahoo!、StrikeIronなどが公開するAPI群などにそれぞれ対応する。
基本的なフレームワークサービス
このほか、標準的なアプリケーション開発で必要となるクラスが多数提供され、迅速かつ容易な開発を支援する。たとえば、email用ソリューション、セッション、認証、ログ、キャッシュ、入力フィルタリングといった機能が用意されている。