Article

22 mars 2006
Sources diverses

.ORG : facon de coder en PHP5 qui simplie la vie

.ORG : une nouvelle façon de coder en PHP5 qui simplifie la vie

Le framework .ORG (lire dot org) est un jeu de classes PHP5 interopérables, polyvalentes, imbriquables et réutilisables.

En effet, au sein de .ORG sont décrits non seulement des classes classiques comme des classes d’accès à des bases de données, des classes d’affichage, mais aussi des classes primitives qui décrivent un entier, un booléen, une chaine, un tableau…

Des classes interopérables

Un très bon exemple de classe interopérable est la classe color qui représente une couleur. De prime abord, une couleur est selon le contexte quelque chose qui peut être différent dans la formalisation et dans son utilisation :

* Une chaine de caractères représentant trois octets hexadécimaux dans le cadre du développement Web, (000000 pour le noir, ffffff pour le blanc, FF0000 pour le rouge…).
* Une ressource retournée par la fonction ImageColorAllocate() dans le cadre de développement d’images avec la librairie GD et défini par un tableau de trois octets codés sous forme d’entier.
* Une constante ayant une valeur (clBlue, clred…).
* …

Avec le framework .ORG, une couleur est… Une couleur, et ce quel que soit le contexte. Et lorsque vous développez un objet chemise qui a une propriété de classe color, toute l’implémentation de la classe n’est plus à faire.

Des classes polyvalentes

PHP est un excellent langage. PHP est à l’origine conçu pour développer des sites Internet, mais avec l’apparition d’extensions comme PHP-GTK, Winbinder, GD, FPDF (…) PHP permet de faire tout type de développement (Développement windows, développement multi-plateformes, développement d’images, de fichiers PDF).

Le problème est qu’un bon développeur sous Winbinder n’est pas un bon développeur sous PHP-GTK, à chaque changement de cadre de travail, il faut s’imprégner de la logique de développement induite par les jeux de fonctions de la librairie.
Avec .ORG, la technique de développement est unique et ne dépend pas du type de développement.
Un excellent exemple est le fameux hello world :

* En développement web, on insère un objet texte ou image dans un objet page.
* En développement windows, on insère un objet texte ou image dans un objet fenêtre.
* En développement PDF, on insère un objet texte ou image dans un objet page.
* En développement d’images, on insère un objet texte ou image dans un objet image.
* …

Les mécanismes sont toujours les mêmes, le code est très similaire, seules les classes invoquées changent.

Des classes imbriquables

Systématiquement dans .ORG, quel que soit le contexte de développement (Web, windows…), on imbrique des objets pour créer des applications.

* En développement Web : Une image va être contenue dans un tableau contenu dans un formulaire contenu dans un tableau contenu dans une page.
* En développement Windows : Une image va être contenue dans un classeur à onglets contenu dans un panel contenu dans un calsseur à onglets contenu dans une fenêtre.
* En développement PDF : Une image va être contenue dans une page contenue dans do*****ent.

Des classes réutilisables

Lorsque certains groupes d’objets sont récurrents dans votre code, vous pouvez le transformer en classe. Un simple appel à un objet de cette classe vous permettra d’importer toute sa complexité en quelques lignes de code.

Nabil BAZ
http://www.elegantk.org