PHP関連のプロジェクトの歴史

PEAR

PEAR、 PHP Extension and Application Repository(元は PHP Extension and Add-on Repositoryでした)は、 PHPで書かれた基本的なクラスの集まりで、将来的には PHPの拡張モジュールを開発者に配布する中心的な 方法になっていくでしょう。

PEARは2000年1月にTel Avivで開かれたPHP Developers' Meeting (PDM)で行われた議論の中から生まれたものです。これはStig S. Bakkenによって作成され、彼の初めて娘であるMalin Bakken に捧げられています。

2000年はじめの頃から、PEARは多くの開発者が一般的で再利用可能な 機能をPHPコミュニティ全体のために実装しました。これにより、 PEARは大きな、そして重要なプロジェクトへと成長しました。 今日PEARにはデータベースへのアクセス、キャッシュ、数学計算、 eCommerce等のバラエティに富んだクラスが含まれるようになって います。

PEARに関する詳細については、 PEARのマニュアルを 参照してください。

PHP Quality Assurance Initiative(PHPの品質保証機関)

PHP Quality Assurance Initiativeは、PHPのリリースが製品として様々な環境で 動作するべく十分にテストされていないという批判への対応策 として2000年の夏に開始されました。品質保証チームは現在のところ、PHPの ソースコードについて十分に理解している開発の中心となって いる人々によって構成されています。こうした開発者はPHPの ローカライズやバグフィクスに多くの時間を費やしています。 この他に、開発者の行った修正を個々の環境でテストして フィードバックを提供する多くのメンバーがいます。

PHP-GTK

PHP-GTK は、 クライアントとして動作するGUIアプリケーションを構築するための PHPソリューションです。PHP-GTKの設計と実装は主として Andrei Zmievskiによります:

GUIプログラミングにはずっと興味を持ちつづけていて、あるとき Gtk+というものが、Cでコーディングするにはあまりに面倒なものだ ということを除けば非常にすばらしいものだと言うことを知りました。 PyGtkやGTK-Perlの実装を見て、PHPで(必要最小限の部分だけでも) Gtkインターフェースを作成できないものだろうか、と考え始めたのです。 そして2000年の8月にちょっとした時間が出来たので実験を始めました。 私が主として参考にしたのはPyGtkの実装でした。というのもPyGtkは ほぼ全ての機能を網羅していて、且つオブジェクト指向のすばらしい インターフェースを持っていたからです。こうした最初の段階で 私はPyGtkの作者であるJmaes Henstridgeの有用なアドバイスを得ることが 出来ました。

Gtk+関数へのインターフェースを全て自作するのは問題外だったので コードジェネレータというアイデアに飛びつきました。これはPyGtkと 同様の方法です。コードジェネレータとはGtk+のクラス、定数、そして メソッドが記述されている.defsファイルを読み込みPHPへのインターフェース となるCのコードを生成するPHPのプログラムです。自動的に生成することが 出来ない部分に関しては.overridesファイルに手動で追加していきました。

2000年の秋の間はあまり時間が取れなかったため、コードジェネレータ やインフラの構築に長い期間がかかってしまいました。しかし PHP-GTKをFrank kromannに見せると、彼は大いに興味を示して コードジェネレータとWin32版の実装を手伝い始めてくれました。 最初のプログラムHello Worldを書いて、それが動作したとき 私たちはとても興奮しました。このプロジェクトが公開するに 足るものになるにはさらに数ヶ月が必要でしたが2001年3月1日に 最初のバージョンをリリースすることが出来ました。このニュースは すぐにSlashDotにも載りました。

PHP-GTKはさらに拡張していくだろうと考え、私は専用のメーリング リストとCVSリポジトリ、そしてCollin Viebrockの助けを得て ウェブサイト(gtk.php.net)を用意しました。ドキュメンテーションは 目下進行中でJames Mooreが手伝ってくれています。

PHP-GTKはリリース以来徐々に広がっています。ドキュメンテーション チームもは日々マニュアルを更新していますし、PHP-GTK用の拡張 モジュール、そしてPHP-GTKを使った興味深いアプリケーションを 作成する人も増えてきています。