Développement PHP
PHP est un language que j'ai beaucoup utilisé, que ça soit pour développer
des sites dynamiques, des scripts CLI ou des Rich Internet Application.
Il n'est pas très bien considéré, car permet de créer des codes
complètement insensé et horrible à lire.
Mais correctement utilisé, il s'avère très agréable.
Tant que l'on reste dans des applications simples, il fait très bien l'affaire. Associé à un framework MVC tel que Zend Framework , et un ORM de type Active Record, développer est une vrai plaisir. Pour l'interface, YahooUI ou jQuery sont très complets.
Lorsque l'on veut développer des applications plus complexes, je ne peux m'empécher de le comparer à J2EE ou .NET, et c'est aussi ce que font les développeurs de Doctrine. Ce projet (dans sa version 2.0) a pour objectif de combler certains manques de PHP face à ces deux technologies, et il me semble très prometteur :
- DBAL
- ORM de type Active Record ou Data Mapper (Doctrine 2.0 est le seul ORM PHP à gérer les Data Mapper)
- DQL (Doctrine Query Language), équivalent de Hibernate
- Intégration à Zend Framework 2.0 (remplace le concept d'Entity qui avait été commencé puis abandonné dans ZF 1.0)
Cela ne corrigera quand même pas les caractéristiques plus ou moins appréciées de PHP : faible typage, absence de packages, absence de classes friends (très appréciables sous .Net)...
Quelques outils que je trouve essentiels au développement PHP :
- IDE : Eclipse ou Netbeans (avec gestion SVN et support de Xdebug)
- Framework MVC : Zend Framework, CakePHP...
- ORM : Doctrine, CakePHP... (selon le besoin : Data Mapper ou Active Record)
- Tests unitaires : PHPUnit (clone de JUnit 3)
- Débug en ligne : Firebug + FirePHP (une merveille !)
- Intégration continue : phpUnderControl
- Guide de style : PHP_CodeSniffer
- Documentation : phpDoc
- Intégration à Eclipse de certains de ces outils : PHPsrc (très utile)