PEAR
("poire") est décrit comme étant le "fruit"
de PHP. A savoir,
PEAR (pour PHP Extension and Application Repository) est
à PHP ce que CPAN
est à Perl
et CTAN à
TeX: une archive
stockant de la façon la plus exhaustive possible des programmes,
des macros et de la documentation. Son but est de fournir aux développeurs
de bibliothèques/modules PHP un moyen d'organiser
leur code PHP ou C d'une manière définie et partagée
par les autres développeurs, ainsi que d'offrir
à la communauté PHP une seule source pour ces ressources.
En bref, c'est une architecture et un système de distribution
pour composants PHP réutilisables.
Créé
au début de l'année 2000 par Stig Bakken, PEAR est
rapidement devenu populaire auprès des développeurs,
et est maintenant un projet majeur de la communauté PHP,
avec de nombreux participants qui travaillent à implémenter
des fonctionnalités réutilisables
pour le bénéfice de la communauté. PEAR inclut
aujourd'hui une
grande variété de classes pour la gestion de base
de données, le caching de contenu, les calculs mathématiques,
le e-commerce, les Web Services et bien d'autres choses. Une archive
équivalente, PHPLib, a été incluse dans PEAR
depuis plus d'un an, lui amenant de nombreuses classes bien pensées
et testées.
PEAR répond
à des problèmes précis: beaucoup d'archives
existaient, mais le code n'y était que rarement structuré.
De même, il devenait nécessaire de concevoir une architecture
pour construire des extensions C à part entière, et
d'avoir des outils pour simplifier/automatiser la mise en place/mise
à jour d'un projet. PEAR a été créé
pour construire une communauté autour d'un même projet,
et pour avoir une meilleure intégration à PHP.
Pour parvenir à ce but, PEAR se base sur un standard
de programmation assez strict, qui permet d'une part d'améliorer
la collaboration entre développeurs (chacun écrit
son code de la même manière), et d'autre part de permettre
à l'utilisateur de comprendre rapidement ce que fait un code
donné.
Ainsi, la forme de base d'une classe est comme suit:
<?php
/* +----------------------------------------------------------------------+
// | PHP Version 4 |
// +----------------------------------------------------------------------+
// | Copyright (c) 1997-2002 The PHP Group |
// +----------------------------------------------------------------------+
// | This source file is subject to version 2.02 of the PHP license,
|
// | that is bundled with this package in the file LICENSE, and
is |
// | available at through the world-wide-web at |
// | http://www.php.net/license/2_02.txt. |
// | If you did not receive a copy of the PHP license and are unable
to |
// | obtain it through the world-wide-web, please send a note to
|
// | license@php.net so we can mail you a copy immediately. |
// +----------------------------------------------------------------------+
// | Authors: Jean Depont <jean@dupont.fr> |
// +----------------------------------------------------------------------+
//
// $Id: Ma-Classe.php,v 0.05 2002/10/17 12:45:17 jd $
//
// Description de la classe
//
require_once "PEAR.php";
class Ma_Classe extends PEAR
{
/**
* Private class variable.
* @var $_str
*/
var $_str;
/**
* Ici, la documentation du constructeur.
*
* @param string $str Un
chouette paramètre de type "chaîne".
*/
function Ma_Classe($str)
{
$this->PEAR();
$this->_str =
$str;
}
/**
* Destructeur
*/
function _Ma_Classe()
{
$this->_PEAR();
}
}
?>
Ce standard de codage est considéré comme étant
le plus propre et le mieux conçu pour PHP, et sa bibliothèque
de classes est d'une excellente qualité. Les plus connues
sont :
- PEAR::DB:
bibliothèque d'abstraction de base de données permettant
de gérer facilement plusieurs appels à différentes
base de données (MySQL, PostgreSQL, Oracle, ODBC...).
- PEAR::SOAP
et PEAR::XML_RPC,
et toutes les possibilités qu'elles offrent, comme la classe
SOAP_Google.
- PEAR::XML_Parser
, très utile, et PEAR::XML_Transformer,
qui permet d'attacher des fonctionnalité PHP à des
balises XML.
Beaucoup d'autres sont disponibles sur le
site officiel...
Un installateur automatique de PEAR existe pour ceux qui ont déjà
PHP installé sur leur machine: go-pear.
Bien entendu, tous les projets PHP ne pourront pas forcément
bénéficier de PEAR, soit par décision de garder
un code réduit, soit par choix de travailler avec sa propre
architecture logicielle pour plus de sécurité. C'est
le plus souvent le cas pour les projets commerciaux.
Mais pour les projets qui peuvent se le permettre, utiliser PEAR
peut grandement réduire le travail à fournir pour
parvenir à un résultat, tout en ouvrant de nouvelles
possibilités. Si l'utilisation de PEAR n'est pas toujours
envisageable, du moins les développeurs y gagneraient à
ajouter à leur trousse à outils ce nouveaux standard
d'écriture pour un code propre et réutilisable.
Nous reviendrons prochainement sur PEAR pour un examen plus approfondi.
|