Vous devez être membre et vous identifier pour publier un article.
Les visiteurs peuvent toutefois commenter chaque article par une réponse.

Firefox 2.0 et JavaScript 1.7

Niouzes de l’Infobrol (Navigateurs)Article publié le 16/10/2006 11:26:08


Firefox 2.0 fera son apparition officielle à la fin de ce mois d'octobre. On en attend une sécurité accrue, une plus grande rapidité dans le rendu des pages Web, une meilleure qualité graphique en général, mais pour parvenir à ces prouesses, il aura fallu changer une pièce essentielle du moteur : son interpréteur JavaScript. Cette date devrait donc également marquer les débuts de la nouvelle déclinaison de l'interpréteur JavaScript 1.7.




Pages d'écriture


Les techniques de programmation en matière d'écriture de pages Web ont bien évolué, au fil des ans. Je vous la fait en mode raccourci : on a connu la mode du tout-HTML, puis l'avènement du PHP, avec la montée en puissance de l'open-source, avant de voir déferler la vague AJAX, une méthode d'écriture hybride qui combine les avantages (et les inconvénients) des langages JavaScript et XML, sans oublier le Flash. Dans le cas d'AJAX (Asynchronous JavaScript And XML), le fait que le traitement des différents éléments constitutifs de la page se fasse de manière asynchrone (au rafraîchissement d'une page, par exemple, les cadres non modifiés demeurent, tandis que changent ceux auxquels l'internaute a apporté une modification, en saisissant par exemple un identifiant et un mot de passe) en a fait un outil de choix pour les développeurs de sites Web, car il impose moins de contraintes au navigateur lors du rendu, et au serveur lors du traitement. Cette technique n'est pas parfaite—aucune ne l'est vraiment—mais les programmeurs l'apprécient, et l'ont popularisée, au point que les sites qui n'y font pas appel se comptent désormais sur les doigts de la main d'un lémurien. Devant cette affluence, les outils existants de décodage de ces pages hybrides avaient atteint leurs limites, et Mozilla a dû travailler à l'amélioration de son interpréteur JavaScript. A tel point que certains n'hésitent pas à affirmer que les navigateurs Web de la famille pourront bientôt se passer d'un moteur de rendu graphique basé sur le langage HTML. Il faut dire que nombreux sont les membres de l'équipe Netscape/JavaScript originelle à avoir rejoint les rangs de Mozilla, à commencer par le père historique du JavaScript, Brendan Eich, qui est depuis devenu le responsable technique en chef de l'éditeur open-source.


Polyvalence


De son côté, Schroepfer relève que si Firefox est autant apprécié des développeurs de sites Web, c'est justement en raison de tout ce qui précède : sa souplesse, la justesse de son rendu, et la possibilité, non seulement de lire le code inséré dans les pages Web telles qu'elles ont été écrites, mais également d'agir côté client (le navigateur, par opposition au serveur, fournisseur de contenu dans ce cas), afin d'exécuter un code compris, par exemple, dans une extension au navigateur lui-même. Les extensions, ces petits programmes annexes bien pratique, ont eux aussi participé à l'essor de Firefox, en lui donnant des fonctionnalités que ses géniteurs lui avaient refusé. Pour rester à la page, Firefox devait changer certaines pièces de son moteur, dont l'interpréteur JavaScript ; ce sera chose faite à la fin du mois.

Comme tous les langages informatiques, hormis peut-être ceux qui ont cessé d'être développés, JavaScript continue d'évoluer. On a prêté à ce langage bien des maux, après l'avoir encensé à sa sortie, en 1995, et force est de reconnaître que bon nombre des failles relevées dans les différents navigateurs Web du commerce ont un lien direct avec lui. Il a tout de même gagné de nouvelles fonctionnalités, au fil du temps, au point de concurrencer dans le coeur des développeurs d'autres langages à la mode, comme Python, ou Ruby. Ces derniers, orienté-objet comme JavaScript, ont pour eux leur légèreté et leur adaptabilité, mais en terme de programmation, tout le monde a raison, et personne n'a tort : si l'on y met tout son coeur, on peut faire évoluer un langage jusqu'à lui donner des capacités insoupçonnées à sa naissance. JavaScript n'échappe pas à la règle, et il a pour lui de pouvoir compter sur une colonie de développeurs motivés... et une large base de clientèle. De fait, d'accessoire nécessaire à un bon rendu des pages Web, l'interpréteur JavaScript prend dans la nouvelle version de Firefox un rôle central. Il était donc temps de le faire évoluer en profondeur, d'autant que Firefox ne se destine pas seulement au grand public ; il veut séduire encore plus de développeurs. La version 1.7 de l'interpréteur JavaScript devrait encore renforcer sa popularité.


Le dynamisme à l'honneur


Ceux qui manient au quotidien du JavaScript verront d'emblée les deux principales améliorations introduites avec l'interpréteur 1.7, les générateurs et les itérateurs. En tant normal, une page Web écrite en JavaScript, si elle se veut interactive, doit accepter de sortir de ses paramètres d'affichage lorsque l'internaute, par exemple, clique sur un lien ou remplit un formulaire. Si le code n'inclut pas cette éventualité, le lien demeurera inerte, et la page inchangée. Il est donc nécessaire d'introduire une fonction qui amène la page à un niveau supérieur ou inférieur. C'est facile à faire, mais suppose que l'intégralité de la page soit modifiée. Vous cliquez sur un lien, et au lieu de changer la physionomie de la partie active de la page (le cadre dans lequel vous avez cliqué, la portion de formulaire que vous êtes en train de remplir, etc...), c'est toute la page qui disparaît, pour réapparaître modifiée. Etant donné que nous avons affaire là à une nouvelle page Web, elle n'est pas encore mise en cache, et son affichage peut donc prendre "un certain temps". Avec les nouveaux itérateurs et générateurs introduits dans l'interpréteur JavaScript 1.7, chaque cadre actif devient un objet à part entière, indépendant des autres objets que renferme la page. On peut également introduire des limites à un objet qui ne concerneront pas les autres objets d'une même page. Ainsi, il devient possible de rafraîchir à partir du cache un certain nombre de cadres, même si le remplissage de l'un d'entre eux à été empêché par une erreur de saisie de la part de l'internaute. Exemple : vous réservez votre billet de train en ligne, et au moment de valider votre numéro de carte bancaire, vous vous trompez dans les chiffres ; avec les nouvelles fonctions évoquées plus haut, la seule portion de l'écran qui sera remise à zéro pour permettre une nouvelle saisie sera la partie où se situe l'erreur. Le rechargement intégral d'une page vierge de vos informations précédentes ne sera plus nécessaire, d'où un important gain de temps pour tout le monde : sur certains sites surchargés, tout délai dans la validation des formulaires en ligne par tel ou tel internaute maladroit entraîne un ralentissement, qui se répercute sur les autres usagers. En rafraîchissant les pages de manière sélective, on soulage les serveurs et on rassure en même temps l'usager. Tout bénef pour tout le monde, en somme...

JavaScript 1.7 n'est qu'une étape dans la dernière ligne droite, celle qui nous sépare de la sortie de la version 2.0, laquelle, si elle est validée par l'organisme de certification ECMA (ce dernier l'évalue depuis 2003), offrira en outre une interaction directe avec l'outil d'écriture de script ActionScript, imaginé par Macromedia avant son rachat par Adobe, au printemps dernier. En version 1.7 déjà, JavaScript ajoute à sa palette des fonctions auxquelles les dévelopeurs en Python ou en Perl sont habitués, et qui rendent l'écriture des pages Web à la fois plus intuitive et plus rapide. JavaScript n'est pas mort, malgré son grand âge.

Avatar :: Lea72 Un article de Lea72

Source : www.generation-nt.com


Sélection, tri et recherche d'articles
FILTRER :
TRIER :1er critère : 2e critère :
CHERCHER : Dans les titres Dans le contenu


[Afficher les liens en fonction des critères du formulaire ci-dessus]

English translation

You have asked to visit this site in English. For now, only the interface is translated, but not all the content yet.

If you want to help me in translations, your contribution is welcome. All you need to do is register on the site, and send me a message asking me to add you to the group of translators, which will give you the opportunity to translate the pages you want. A link at the bottom of each translated page indicates that you are the translator, and has a link to your profile.

Thank you in advance.

Document created the 25/06/2004, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/niouze-rf-544.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.