aller au contenu

Hosting

PHP permet un hosting sur quasi tous les serveurs web (apache, nginx, etc), et la plupart des hébergeurs web proposer des hosting partagés pour PHP. Java, en revanche, requiert l’installation d’un « servlet container ». De nombreuses solutions gratuites et faciles à mettre en œuvre existent – à l’instar de Tomcat – mais demande bien souvent l’installation d’un serveur spécifique.

En conclusion : pour les projets à faible budget ou devant rester gratuit, le PHP semble plus indiqué, car le hosting est plus simple à mettre en place.

Meilleur choix : PHP

Apprentissage

PHP est un langage conçu pour internet. Ajouter un petit morceau de code PHP dans une page web pour y créer une partie dynamique se révèle très simple. C’est la raison pour les personnes démarrant de zéro ou désirant apprendre le développement commence volontiers avec PHP, les résultats étant immédiatement perceptibles. De son côté, Java demande au minimum une bonne compréhension de la programmation orientée objet, chose ardue pour un néophyte.

Meilleur choix : PHP
 
 

Communauté / Ressources / Interopérabilité

PHP et JAVA sont des langages extrêmement populaires, disposant de nombreuses ressources et s’appuyant sur une très large communauté. Mais s’il fait jeu égal avec JAVA au rayon « sites web », PHP n’est présent que dans cette branche. JAVA est quant à lui utilisé dans quasiment tous les domaines de l’informatique, ce qui permet une grande interopérabilité. C’est par exemple le socle de base du système Android, présent sur la plupart des smartphones dans le monde. Cela a pour conséquence qu’il est plus facile de trouver un développeur Java que PHP.

L’IEEE est un organisme qui comptabilise le nombre de recherches effectuées sur l’un ou l’autre langage, le partage d'information/de ressources en ligne, et l'activité sociale autour des différents langages de programmation.

 

Comparaison des entrées dans les sites de support au développement (2018)
Meilleur choix : JAVA
 

Sécurité

JAVA valide les données à chaque étape du processus, ce qui rend presque impossible toute velléité d’attaques de type « injection », et se révèle donc un atout important en matière de sécurité. Côté PHP, le contrôle et la validation des données sont l’apanage du développeur, là où JAVA les inclut directement au cœur du langage.

Meilleur choix : JAVA

Performances

Avant d’être exécuté, le code JAVA est « compilé », c’est-à-dire écrit et transformé par le développeur pour faciliter sa lecture par une machine. Un aspect qui rend les applications JAVA plus performantes que leurs homologues PHP. Pour vérifier ce constat, nous avons mené une expérience simple, en installant sur une même machine plusieurs CMS basées sur différents langages et en envoyant des milliers de requêtes sur ledit site sans autre configuration. Voici le résultat de ce test :

Charge sur CMS "Out of the box" (2014)
Meilleur choix : JAVA

Maintenance

Java garantit une comptabilité ascendante du langage. En pratique, quel que soit le projet, il sera possible d’effectuer une mise à jour sans problème et aucun un souci n’en résultera. En PHP par contre, les mises à jour de version majeures peuvent engendrer des problèmes dans l’applicatif. De plus, en raison du profil « compilé » du langage PHP, il faut, pour qu’un problème se pose, une exécution dudit code par le visiteur du site. De nombreux tests utilisateurs seront donc nécessaires à chaque mise à jour de version.

Java utilise un mécanisme de « packaging ». L’application web est « empaquetée » dans un fichier ZIP (avec l’extension .war), quand PHP déploie simplement les fichiers sur le serveur. L’approche de JAVA est meilleure pour les mises à jour importante en milieu professionnel, car elle garantit que tous les fichiers proviennent bien de la même version et seront compatible entre eux. A contrario, PHP complique davantage les mises à jour globales que les mises à jour simples ou corrections mineurs, qui ici peuvent se faire directement sur le fichier dans l’application.

Meilleur choix : JAVA (sauf petit projet)