Journal du Net > Développeurs > Contributions > Vous programmez en JavaScript ?

APPEL
A CONTRIBUTION

Que vous soyez expert ou novice, faites part aux lecteurs de votre expérience en matière de développement JavaScript.
Participez
 Très puissant, mais piégé d'embuches pour le développeur  
Eric Rogé , Paris

Quels sont, d’après-vous, les avantages et inconvénients de ce langage ?
Le langage est extrêmement puissant. En fonction des besoins, il peut rendre en quelques lignes un formulaire plus ergonomique, ou permettre de prendre le contrôle complet de tout ce qui s'effectue dans la fenêtre de navigateur du visiteur pour construire une application à la Gmail.

D'un point de vue fonctionnel, il permet dans bien des cas, d'offrir aux visiteurs une ergonomie bien supérieure aux méthodes classiques basées sur le rechargement complet des pages affichées.

Dans sa structure, Javascript offre tout ce qu'un programmeur peut attendre d'un langage moderne :
- Un langage Objet très puissant hérité de Lisp
- Une gestion complète des erreurs try()... catch()
- Une gestion du typage des variables
- Une gestion complète du DOM des éléments chargés dans la page
- La possibilité de chainer les instructions les unes à la suite des autres
- La gestion pousée des événements
- La modification du style des éléments de la page

Mais le langage possède également certaines limitations :
- Une implémentation disparate en fonction des navigateurs et de leur version
- Pas de vraie gestion de la mémoire allouée


Cependant cette puissance ne se révèle vraiment qu'après un apprentissage qui peut paraitre long pour développeur habitué des langages serveur.

- Au premier abord, le débuggage n'est pas intuitif et demande d'installer des outils dédiés (Firebug et Selenuim pour les projets plus complexes)
- La logique objet héritée de Lisp est puissante, mais déroute fortement pour qui n'a jamais utilisée que la POO classique.
- Javascript n'est pas exploité par les moteurs de recherche et il est désactivé de certains postes.
Pour avoir un site toujours accessible, idéalement il faut donc prévoir sa désactivation et proposer un traitement identique effectué cette fois-ci côté serveur.
Si le problème n'a pas été pensé en amont du développement, on peut parfois se retrouver à réécrire une deuxième fois des scripts. Frustrant. Il faut toujours penser à ce problème lors de l'écriture du cahier des charges.


Est-il facile ou difficile à prendre en main au début ? Pourquoi ?
Pour des animations ou des contrôles ou des envois ajax simple, le langage est simple à prendre en main grâce aux librairies existantes et maintenant correctement commentées.
De nombreux plugins devraient apporter satisfaction aux développeur web souhaitant animer sa page web sans mettre les mains dans le code.

En revanche, lorsqu'on commence à s'intéresser vraiment au langage, le DOM et la logique Objet sont les deux points difficiles à apprivoiser.
De plus, dans le cas d'Ajax, le principe même d'un langage client qui intéragit avec des scripts serveurs peut demander de repenser l'architecture de son code.


Quels développements avez-vous réalisés en JavaScript ? Avez-vous rencontré des difficultés ?
Création de formulaires interactifs, effets d'animations, Ajax, suivi des internautes séparé de celui des moteurs.

Publié le 02 avril 2007

Soyez le premier ou la première à réagir à ce temoignage : réagir
5 contributions : 1 2 3 4 5
 




 

© Benchmark Group, 69-71 avenue Pierre Grenier 92517 BOULOGNE BILLANCOURT Cedex

RECHERCHER