Durant mes congés actuels loin de mon cher ordinateur, je squatte celui de mes parents, histoire d’avancer un peu sur certains aspects du projet.

Malgré le manque de puissance et un écran sorti du film « War Games » -1986, je le rappelle; avec un tout jeune Matthew Broderick qui ne savait pas encore qu’il rencontrerait plus tard Godzilla et Jean Reno dans le même film… – , j’ai pu y faire quelques recherches et même, quelques tests.

Ceux-ci ont porté sur un Environnement de Développement Intégré approprié – aussi appelé pompeusement EDI. Ainsi que sur le choix d’un Framework PHP et d’un autre pour AJAX.

Depuis quelques mois, je n’arrivais pas à me fixer, tant l’offre est pléthorique, et tant il est difficile de se faire une idée quand on part de zéro: il faudrait tous les essayer!

Après un grand nombre de lecture, d’avis et de cogitations intenses à l’abri d’un sole pleureur sous le soleil de décembre, je me suis lancé sur les choix suivants:
LEDI est le très réputé Eclipse – version Ganymède – , qui possède maintenant un plugin natif pour PHP au doux nom de Php Development Tools – aussi appelé pompeusement PDT (et oui, nous autres, informaticiens, on sait faire clair et concis… Voire totalement incompréhensible pour la plupart de nos semblables!). La version choisie fut une 2.0RC2, dite « stable ». On peut la trouver ici.
J‘y ai inclus, en plug-in Eclipse, un gestionnaire de version fort connu : SVN. La version 1.4, pour être précis, que l’on retrouve .
Le Framework PHP retenu fut le tout dernier Zend Framework en version 1.7, qui, dans ses versions ultérieures, permettait déjà la connexion à un Framework AJAX, en l’occurence DOJO, mais qui désormais, permet une façon de communiquer avec JQuery, sur lequel je lorgnais depuis quelques temps.

Donc, je tenterai les essais avec JQuery, même si un autre Framework AJAX reste en lice dans mon esprit : Scriptaculous.

Pour parachever tout cela, j’ai repris le bon vieux WAMP, sur lequel j’avais déjà fait mes dents lorsque je codais sans EDI particulier, ni Framework PHP, encore moins JavaScript – mais si!!! Souvenez-vous!
Cette fois-ci, dans sa version 2.0f, toujours avec un serveur Apache, Php et un moteur de base de données MySql, fort pratique!

Je rappelle que – ô joie, ô bonheur – tous ces outils sont gratuits, libres d’utilisation et que l’on peut trouver sur le net tout un tas de sites plus ou moins bien faits expliquant comment se servir de tout ce fatras!
Et même dans ces cas, il faut parfois un peu mettre la main dans le cambouis pour trouver le bon chemin soit-même, ce qui n’est pas plus mal: cela permet de comprendre plus qu’en surface.

Ainsi donc, une fois tout ce petit monde installé – comme il était pourtant fort bien expliqué ici -, je me suis retrouvé avec quelque chose qui ne fonctionnait pas, car le serveur Apache installé par défaut ne permettait pas la redirection de pages comme souhaité dans le .htaccess défini dans l’exemple.
Il faut en effet autoriser cette possibilité dans son paramétrage en modifiant le httpd.conf comme expliqué ici.

Et l’EDI Eclipse, si vous ne l’avez jamais utilisé, est aussi à prendre en main.
Heureusement, au sein de ma boîte, j’utilise RAD, produit d’IBM pour ses solutions JAVA, qui s’appuie sur Eclipse.
C‘est toujours cela de moins à apprendre, même s’il me reste bien des choses à voir avec!

Ainsi, une fois tout bien paramétré, j’ai pu tester quelques possibilités du Framework Zend.

A quoi bon un Framework? Malgré la définition de wikipédia que vous avez pu lire, vous ne percevez peut-être pas l’avantage d’en utiliser un.
En gros, un Framework va vous permettre de ne pas réinventer – ou recoder – la roue en permanence.
Prenons un exemple simple: un champ e-mail dans votre écran. En principe, vous devrez tester que la saisie l’utilisateur est bien un e-mail, qui a des caractéristiques bien précises: présence d’un « @ », absence d’accentuations ou de caractères genre slash…
Ceci se fait en créant un programme de gestion des expressions régulières, qui, franchement, n’a rien d’intéressant et est très rébarbatif, sans compter les pièges inhérents à la complexité des expressions régulières.
Or ces programmes existent partout, sur chaque site, et la règle est la même pour tous: il vaut donc mieux réutiliser un code existant et éprouvé.
Un langage orientée objet est parfait pour cela, tel que PHP, qui encapsule le programme, invisible de vous, mais accessible par une fonction que vous appelez. Ces fonctions utiles sont regroupées au sein de packages, nommés Framework, que chaque éditeur compose à sa sauce, plus ou moins performante, plus ou moins étendue. A vous de choisir la vôtre selon vos besoins.
Pour le cas de l’e-mail et de Zend, cette fonction s’appelle Zend_Validate_EmailAddress. Vous pouvez retrouver un exemple et une explication de cet appel ici.
Des fonctions équivalentes existent pour la validité d’un nombre, un montant, le transfert de données sécurisés, la gestion des dates, la redirection d’url, la connexion sécurisée à la base de données, etc…

Ainsi donc, le Framework va permettre de vous épargner un codage laborieux et inutile, va normer votre façon de coder par ces appels à des méthodes éprouvées, et va ainsi vous affranchir d’une bonne part d’études déjà faites et offertes par d’autres – et en plus, meilleur que vous; enfin, que moi, c’est certain…
A ce propos, et du fait des licences GPL de ces outils, vous pourrez amener votre contribution des briques utiles que vous auriez codé vous-mêmes, car non présentes dans le Framework de base, en l’offrant à la communauté, remerciant ainsi les autres de leur labeur passé et utile pour vous.

Pour AJAX, je n’ai encore rien testé.
D‘une part, je n’ai pas eu le temps! D’autre part, certains sont spécialisés dans la gestion de données, d’autres dans les possibilités visuelles…
Et il se trouve que je ne souhaite pas en utiliser 50 – cela est tout à fait possible – car cela allourdit une page, dans le sens où il faut envoyer le Javascript utilisé sur la machine cliente, et donc le faire passer par le réseau. Et je ne sais toujours pas si les scripts AJAX restent dans le cache du navigateur ou non…
Je cherche donc LE framework ultime! Hélas, rien n’est figé et cela bouge sans arrêt…

Je dois tester pour notre utilisation, et tout reste à faire…

On repart donc dans le codage, mais je pense que l’on va se faire aider quant à l’étude de notre configuration ultime, afin de figer nos outils, au moins pour les 6 prochains mois!

Sur ce, je vous laisse et m’en vais me replonger dans… Mon assiette! Ma mère m’appelle, c’est l’heure de passer à table! C’est bon d’être en congé :)