Premiers pas en JavaScript

1.5 Comparaison JS / PHP
cuy copyleft
  See You Why?  

 


À tester (1.4) | | Exo sur l'intro (1.8)

 

Contenu

 

 

 

I. Définition

voir <<< séquence précédente

 

 

II. Rappel historique

voir <<< séquence précédente

 

III. Outils indispensables

voir <<< séquence précédente

 

IV. Connaissances préalables

voir <<< séquence précédente

 

 

V. À tester...

voir <<< séquence précédente

 

 

VI. Comparatif JVS / PHP

Ce comparatif des deux langages Web est essentiellement inspiré du travail de Julp, disponible sur le site developpez.com.

Caractéristique PHP Javascript
Exécution Exécuté sur le serveur, comme l'ASP (payant de Microsoft). Exécuté chez le client.
Logiciel nécessaire à l'exécution Un interpréteur PHP doit être installé sur le serveur... c'est le cas de presque tous les hébergeurs. Tous les navigateurs possèdent un interpréteur Javascript (mais qui peut être désactivé).
Intégration dans une page HTML Les deux langages s'intègrent parfaitement dans une page HTML,
mais l'utilisation du PHP exige (en principe) que l'extension du fichier source ne soit plus .htm ou .html mais .php.
Manipulation de fichiers Lecture, écriture, ajout possible dans des fichiers texte et éventuellement binaire situés sur le serveur. Totalement incapable de manipuler les fichiers.
Consultation des sources Le client n'a aucune possibilité de lire les sources PHP des fichiers du serveur. Seules leurs traductions HTML seront consultables. Les sources JS sont totalement consultables (et donc copiables ou adaptables) par le client.
Prix Les deux langages sont gratuits,
JS car exécuté sur l'ordinateur du client,
PHP car logiciel distribué librement et gratuitement sous licence GNU GPL
attention l'ASP est payant chez Microsoft.
Cookies Il est possible d'utiliser les cookies dans les deux langages,
mais l'utilisation est simplifiée en PHP.
Données issues de formulaires (POST) PHP permet de récupérer toutes les données d'un formulaire. Au contraire, Javascript permet uniquement d'accéder aux différents champs d'un formulaire tant que celui-ci est apparent sur la page active.
Données passées par URL (GET) Ici encore, les deux langages permettent de récupérer les variables passées par URL.
Cependant, PHP permet de manipuler plus facilement des données
et même de les encoder et décoder.
Manipulation de base de données PHP permet d'interroger tout type de base de données et de récupérer les tuples (résultat) d'une requête. Impossible en Javascript... sauf utilisation de fichiers CSV, voire même des requêtes SQL[1].
Création et manipulation d'image Manipulation et création d'image possible grâce à la librairie GD. Javascript ne permet uniquement que d'afficher des images.
Richesse PHP dispose d'un nombre très important de fonctions qui se chiffre à plus de 2000. Très petit nombre de fonctions comparé à PHP, tout au plus une centaine.
Avenir Ajouts continuellement de nouvelles fonctionnalités malgré qu'elles ne soient pas toujours compatibles avec les anciennes versions. Stable, l'ajout de nouvelles fonctionnalités est rare.
Récupérer le navigateur du client Possible dans les deux langages,
cependant Javascript permet d'avoir plus de précisions.
Information sur le serveur Il est tout à fait possible en PHP de récupérer une multitude d'informations concernant le serveur. Impossible en Javascript.
Information sur le système du visiteur En dehors du nom du système d'exploitation du visiteur, on ne peut rien obtenir. En Javascript, il est possible d'établir la résolution de l'écran, ainsi que les plugins ... de l'utilisateur.
Réagir aux événements chez le client Impossible en PHP, puisqu'il est exécuté côté serveur. Javascript permet de réagir aux événements : (dé)chargement d'une page, validation de formulaire, clic, focus d'un champ de formulaire...
Partage des variables entre plusieurs pages PHP, permet depuis l'introduction des sessions de partager aisément des variables sur les différentes pages qui composent un site ou encore d'utiliser la barre d'adresse pour passer des variables avec certaines contraintes (types des variables, limitation en nombre de caractères... Il est possible de passer des informations en quantité limitée en utilisant l'URL.

[1] voir entre autres "Accès à la base de données", http://lti.epfl.ch/LemanOS/Html/Database.html de l'École Polytechnique Fédérale de Lausanne.

 

Quelques désavantages du JavaScript

Nous ne relèverons ici que trois inconvénients du JavaScript : la sécurité, la possibilité pour les internautes de désactiver le JS sur leur navigateur et le manque de compatibilité entre les navigateurs (standardisation).

Sécurité

Le Javascript s'exécute du côté client : c'est dons sur l'ordinateur de l'internaute qui visite vos pages que l'exécution du JS se fait. Ainsi, un gestionnaire de site malveillant pourrait se permettre des actions malicieuses telles que visiter votre historique de visites sur internet ou de subtiliser vos codes secrets. Cependant le JS pur ne permet pas d'interagir avec le disque dur de l'internaute qui visite un site, sauf l'utilisation des cookies (voir ici).

Cependant, JS peut faire appel à des applets Java ou Activex, qui elles peuvent interagir avec votre disque dur. Depuis sa version d'aout 2014, Microsoft via son Internet Explorer bloque les vieux contrôles ActiveX, considérés comme obsolètes pour des raisons de sécurité (mais non activé pour des zones qui ont été déclarés de confiance) et de nombreux utilisateurs du Net ne dispose pas de la dernière version de Java, parce qu'ils ne savent pas comment faire cette mise-à-jour gratuite.

 

Désactivation

C'est sans doute par crainte de ce manque relatif de sécurité que cerains internautes désactivent JS

 

Manque de compatibilité

Nous

 

VIII. Exercices intro

voir suite >>>

 

 

IX. Test sur l'introduction

voir suite >>>

 

 


À tester (1.4) | | Exo sur l'intro (1.8)