écemment un article paru dans ZDNET, tentait de
montrer que PHP n'était pas une solution fiable pour
des applications internet, la communauté PHP en France
a réagi face à ces propos :-) .
L'article original «PHP and Zend» de Larry J. Seltzer est paru sur www.zdnet.com
Le
décor
Pour
bien mettre en place le décor, il convient de rappeler ce
qu'est PHP : un langage de script côté serveur qui
analyse un code source pour servir une page dynamique, c'est
à dire différente suivant les paramètres qui sont transmis
au code. Parfois accusé par le passé d'être un langage de
« bricoleur » car « embarqué » dans
les pages HTML, PHP a su faire de ce choix de conception
sa force et sa réussite : un langage rapide, réactif et
largement adapté à toutes les situations.
Ceci étant posé, nous allons tenter de clarifier l'article
de ZDNET
«
.. PHP tourne sous plus de 5,5 millions noms de domaines
.. »
- Ce
qui implicitement veut dire que PHP est une solution
fiable, largement utilisé, facilement disponible et
surtout facilement mise en ouvre.
«
..Normalement, l'accès aux bases de données se fait par
des couches logicielles comme ADO ou JDBC, PHP quant à lui
utilise des API adaptées à chaque cas et supporte plus de
12 bases de données différentes dont Oracle, Sybase, MySQL,
PostgreSQL... »
-
C'est, à mon sens, la preuve d'un langage suffisamment
évolué pour réaliser en interne l'appel à une base de
données, par des fonctions optimisées pour chaque environnement.
Cela veut dire que le serveur est capable de supporter
une charge plus importante car il n'y a pas recours
à une couche logicielle supplémentaire.
«
.. PHP a grandi dans un environnement système d'exploitation
Linux, serveur Apache et base de donnée Mysql, .. et PHP
est optimisé pour cette configuration .. »
-
Arrivé à ce point, tout est dit. PHP est une possibilité,
mais c'est surtout un choix de conception. La portabilité
peu aisé d'une plate-forme à l'autre est un peu un doux
rêve. Lorsque vous avez développé un site relativement
important dans un environnement, est-il pensable de
changer celui-ci régulièrement au gré des modes ou des
variations de prix des composants de vos applications
? La brusque augmentation des licences Oracle, il n'y
a pas si longtemps que ça, et la grogne de certains
usagers a dû, peut être, se faire poser la question
plus d'une foisà plus d'un responsable. Il est
vrai qu' Oracle ne fait pas partie de cet univers des
logiciels libres (univers dont est issu notre quatuor).
«
.. la version Windows de PHP ne peut sérieusement pas
servir à un site en production .. »
- Dernier
point pour terminer le panoramique : il est vrai qu'une
architecture Linux est un peu plus difficile à mettre
en oeuvre et demande des compétences autres que pour
windows (plus facile d'accès, plus répandu, moins technique).
Qu'à cela ne tienne, notre trio - PHP, Apache, MySql
- existe aussi en environnement Windows pour le travail
de développement, laissant aux robustes serveurs de
type Unix gérer le site de production. Ce qui aura été
développé en interne sous Windows sera directement inséré
sous Unix sans aucune retouche. Si ce n'est pas le paradis
de la portabilité, cela y ressemble toutefois beaucoup.
PHP
est un domaine de compétence et une philosophie.
Lorsque
ZDNET énonce « [PHP qui par ses choix ne permettrait
pas de] réduire les coûts de formation [en ayant de nombreuses
fonctions, différentes pour chacune des bases de données]
». Nous touchons du doigt le coeur de la philosophie
PHP et le domaine de compétences des développements Internet
:
- OUI
PHP c'est un code optimisé pour certaines plate-formes
!
- OUI
PHP est un langage à part entière qui suppose des choix
et implique des prérequis de départ !
- OUI
PHP est un langage de professionnel qui s'apprend !
Analysez
le processus de développement d'un site ou d'une application
: la durée de réflexion et de conception participe
à hauteur de 80 % dans la durée complète du
développement et la durée de programmation
à hauteur de 20 %. Ce n'est donc pas le temps d' apprentissage
des fonctions PHP (somme toute relativement rapide) qui
pourrait augmenter les coûts, mais bien de mauvais choix
analytiques ou algorithmiques : avec quelles méthodes vais-je
traiter ces informations et non pas comment vais-je programmer
ma fonction.
Il
est vrai, de nos jours, qu'avec la multiplication des logiciels
de création de pages et de sites Internet, aux formats tous
plus ou moins propriétaires (Front Page, Adobe, Dreamweaver,
Cold fusion ..) certains ont tendance à oublier ce qu' est
véritablement le développement. Emerge alors une génération
de web-agency ne connaissant plus les bases du code HTML
(souvenez-vous, ces bonne vielles balises ) et créant des
sites Légo. Vous voulez une boutique en ligne ? nous avons
la boutique Machin, une carterie ? la carterie Machin,
une base de donnée de vos membres ? la base de donnée Machin,
une liste de diffusion ? pas de problème, nous vous proposons
la liste Machin.. Vous voules faire évoluer
un des composants, ben là ce n'est pas possible !
Vous voulez
Pour
conclure aujourd'hui...
- Si
Internet, c'est l'interactivité réelle (et pas un jeu
de Légo) ;
- Si
Internet, c'est un site personnalisé, sur mesure, et optimisé
pour une plate-forme ;
- Si
Internet, c'est la connaissance des langages qui le véhicule
;
- Si
Internet c'est la liberté d'évoluer vers ses fonctionnalités
propres ;
Alors
Internet ressemble bien à PHP.
Et
là, PHP c'est vraiment du 5 sur 5
!
.
Hervé
Couvelard
www.viva-vous.net
Conception et développement
|