03 juin 2007

Zend Neon ou le futur de Zend Studio

Category: UncategorizedRenaud @ 11h45

Zend NeonNexen publiait une news le 17 Mai qui annonçait que Zend faisait « un sondage sur l’utilisation des IDE PHP, et les fonctionnalités qu’un IDE doit proposer ». J’y suis allé et j’ai répondu aux questions. On m’a dit merci et j’ai vaqué à mes occupations.

V’la-t-y pas que le 30 Mai, je reçois un mail de Zend (dans ma boîte spam d’ailleurs) qui me dit en gros « merci beaucoup d’avoir participé, mais c’est pas terminé, on a besoin de beta testeur, viens nous aider ».

J’y apprends que la prochaine version de Zend Studio s’appellera Zend Neon (à mois que ce soit un nom de code…) et que je peux la télécharger et en discuter sur un group Yahoo. Je télécharge donc la bête (179Mo quand même) et l’installe.

Première surprise, Zend Neon n’est ni plus ni moins qu’Eclipse packagé et complété de plugins paramétrés. Il faut savoir que j’étais un aficionados d’Eclipse jusqu’à ce que je rentre dans la boîte où je suis et où j’ai dû le quitter… et je l’ai remplacé par Zend Studio. En effet, dans ma boite actuelle, les différents sites sont tous mélangés, pas de vhost, pas de trucs bien séparés. En plus, au début, on développait tous à la barbare sur le répertoire de dev, pas d’outil de versionnage, pas de dev par personne… c’était un peu n’importe quoi et Eclipse ajoutait des fichiers dans le répertoire de dev et, surtout, il n’arrivait pas à gérer autant de fichiers, ca ramait, c’était vraiment inutilisable. Au contraire, Zend Studio était rapide, il n’ajoutait aucun fichier et on pouvait même lui dire quels répertoires gérer.

Entre temps, au boulot on est passé à SVN et on a donc maintenant chacun son repository. Du coup, j’ai fait un petit test et j’ai essayé d’utiliser Zend Neon sur mon repository. Il a réussi à m’ouvrir tout le site et j’ai même un peu codé, c’était pas particulièrement lent, bref… c’est possible qu’il remplace mon Zend Studio.. MAIS il ne fait pas ce que je veux avec les charsets. Je bosse sur plusieurs projets qui n’ont pas le même charset. Si les nouveaux sont bien entendu en UTF8, les anciens sont en ISO-8859-1. Le problème c’est qu’il veut m’enregistrer en UTF8 tous les anciens fichiers alors que je lui ai dit que c’était de l’ISO… faut que je me plonge dans la configuration de Zend Neon.

Deuxième surprise, Zend Neon gère le Zend Framework… bon ce n’est qu’une demi surprise puisque déjà les dernières versions du Zend Studio permettaient plus ou moins de faciliter le développement d’applications liées au Zend Framework. Mais là, on peut créer un « projet Zend Framework » et ca crée directement l’architecture. Je n’ai pas creusé plus loin, je ne sais pas si ça crée un squelette de controllers, de model, etc…

Bref, ca se présente plutôt bien, tout ça :)

Mots-clefs : , ,


22 mai 2007

Frameworks PHP

Category: UncategorizedRenaud @ 09h03

phpMoi qui ne jurais que sur le Zend Framework depuis sa toute première version beta, alors que la communauté française se créait petit à petit et, enfin, alors que la version finale ne va pas tarder à pointer le bout de son nez (la 0.9.3 est sorti il y a peu de temps), voilà que je m’intéresse aux autres framework php. J’ai regardé un peu ce que je trouvais et qui répondait au doux nom de framework php et j’en ai trouvé plein. Voici les principaux par ordre alphabétique:

  • CakePHP, dont les numéros de version à rallonge sont une source de franche poilade pour tout mon boulot (la dernière version stable est la 1.1.15.5144). J’avais essayé, il y a quelques mois, de dompter la bête… sans succès.
  • CodeIgniter, comme CakePHP, j’avais essayé, sans succès, de comprendre ce framework.
  • Jelix, lancé par Laurent Jouanneau, un framework français qui à l’air plutot interressant mais dont la documentation est pauvre et incomplète alors que la version 1.0 beta2.1 vient de sortir.
  • Symfony, développé par une société française… en anglais. la communauté est assez grande. Tout comme ses camarades CakePHP et CodeIgniter, impossible de comprendre quoi que ce soit à ce framework il y a quelques mois.
  • PHP On Trax, développé dans l’optique de faire un Ruby On Rails avec PHP.
  • Seagull, non testé
  • Zend Framework, développé par Zend, The PHP Company.
  • Pleins d’autres…

Je n’ai pas du tout testé Jelix à cause de sa documentation à trou. PHP On Trax non plus: je n’aime pas RoR, il y a peu de chance pour que PHP On Trax me plaise. Pas plus pour Seagull dont le nom ne m’attire pas (oui, je sais c’est pas une excuse valable… et pourtant). CakePHP, CodeIgniter et Symfony m’ont paru beaucoup trop obscurs, même leurs tutoriels mon blog en 5 minutes ne me convainquaient pas Quant à Zend Framework, je me suis plongé dedans aussitôt, j’ai aimé, j’ai développé des applications avec, y compris à mon boulot… et pourtant.

Le gros défaut de Zend Framework

Zend Framework est aux Framework PHP ce que PHP est aux langages de programmation. C’est simple, il y a une excellente documentation, une grande communauté et… on peut faire tout et n’importe quoi. De la même manière qu’on peut coder comme un porc ou comme un dieu avec PHP, on peut utiliser le ZF comme PEAR en utilisant des bibliothèques par ci, par là, on peut suivre ou non l’architecture proposée par Zend, on peut utiliser le concept MVC ou pas. Bref, le ZF est, tout comme PHP, beaucoup trop permissif pour un framework. Au final, on peut très vite se retrouver avec un site qui n’est pas du tout facile à maintenir, un comble pour un framework.

Alors on utilise quoi?

Je ne saurais rien imposer. Mais après moult tests et avec de l’acharnement, je pense avoir trouver mon bonheur avec Symfony. Le gros problème de Symfony, c’est son tutoriel de prise en main qui m’a fait fuir alors que le framework lui-même est une perle car, et ça se sent, il répond exactement à bon nombre de problématiques que l’on peut rencontrer dans des applications Web professionnelles. En lisant la documentation de Symfony[1] (je n’ai pas fini, j’en suis au chapitre 9), j’ai rencontré des solutions à des problèmes que l’on rencontre à mon boulot. ce qui n’était pas le cas avec ZF où il fallait au contraire créer tout un tas de plugins ou d’helpers.

SF remplace ZF ?

Oui. Je projette de migrer vers Symfony l’application que j’ai commencé sur ZF au boulot (sur mon temps libre, sinon mon patron va me tuer) Je compte aussi commencer la traduction en français du manuel de SF.

Notes

[1] Que ceux qui disaient que je ne lisais pas l’anglais remarque bien que l’intégralité de ce manuel est en anglais et qu’il n’en existe pas de version française

Mots-clefs : , , , , , ,