Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。Framework」について紹介していきます。Frameworkの特徴と環境設定手順までを解説します。Framework」について紹介していきます。本連載では、以下の内容を扱う予定です。Frameworkの特徴と環境設定手順までを紹介します。対象読者PHPの基本構文は一通り理解しているが、フレームワークを利用したことはないという方を対象としています。Frameworkは、PHP5.1.4以降とWebサーバがインストールされている環境で利用可能です。XPを採用し、アプリケーションを作成していきます。次回以降のサンプルでは、データベースとしてMySQLを用いる予定です。以下に、今回アプリケーション作成/動作確認に用いた環境を示します(インストールにあたっては最新安定版の使用を推奨します)。WINGS」より「サーバサイド環境構築設定」を参照ください。2.2.6LinuxやFreeBSDなどUNIX系OSをお使いの方もコマンドはほぼ一緒ですので、パスなどは適宜読み替えてください。Frameworkとはフレームワークそのものの概念については、拙著『symfony入門(1):symfonyで始めるPHPフレームワーク』を参照ください。Technologies社が中心となって開発した、BSDライセンスに基づくオープンソースのPHP5用MVCフレームワークです(PHP5.1.4以降が必要となります)。本家サイトによれば、以下の様な特徴があります。Frameworkは非常にシンプルな構造をしていて、すべてPHP5のオブジェクト指向を用いて設計されています。一つ一つのクラスライブラリは「コンポーネント」と呼ばれ、それぞれを単独で呼び出すことができます。Frameworkのコンポーネントは用いるがMVCは使わないといったこともありえます。Frameworkで提供されるコンポーネントについて表でまとめます。FrameworkではBSDライセンスを採用しています。これは著作権と免責事項の表示をしていれば改変や再利用が自由というもので、さらに改変したコードを非公開にできるため、商用利用しやすいライセンスとなっています(他でよく採用されているGPLライセンスは、改変したものを再配布する際にもそのコードをGPLライセンスに基づいて公開することが義務付けられているために、商用としては使いにくいものとなっています)。Agreement)に署名することになっています。Frameworkで使用するための著作権ライセンスが提供されることになります。高品質のオブジェクト指向PHP5クラスライブラリ最新のWebフィーチャーも利用できるようになっています。Ajaxや検索機能はもちろんのこと、Yahoo!やGoogle、AmazonといったWebサービスを利用するためのAPIもコンポーネントとして提供されています。Frameworkの構造は、現在メジャーなPHPフレームワークであるsymfonyなどに比べるとはるかにシンプルであることから、幅広い機能を提供しながら習得が比較的楽であり、動作も高速です。symfonyではその規模にかかわらず開発するアプリごとに「プロジェクト」「アプリケーション」「モジュール」が設けられ、自動生成機能や設定ファイル群が非常によく整備されている反面、動作は重くなりがちなど、他のライブラリが利用しづらい面もありました。Frameworkはこれまで開発してきた既存のPHPコードも活用しやすいですし、他のライブラリとの併用も可能です。本家開発のフレームワークであることから、その質/信頼性もメリットの一つとなっています。本家ドキュメントを始めとした日本語情報も充実してきました。NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Technologies。執筆コミュニティ「WINGSプロジェクト」代表。