ECMAScript


ECMAScript

ECMAScript est un langage de programmation de type script standardisé par Ecma International dans le cadre de la spécification ECMA-262. Il s'agit donc d'un standard dont les spécifications sont mises en œuvre dans différents langages script, comme JavaScript ou ActionScript. Les dernières spécifications, en cours de développement, en font un véritable langage de programmation orienté objet.

Sommaire

Histoire et développement

LiveScript et Mosaic Communications Corporation

La société Netscape, à l'origine connue sous le nom de Mosaic Communications Corporation, a développé un langage de script côté client, appelé LiveScript, pour renforcer l'offre commerciale de son serveur web. La sortie de LiveScript est intervenue à l'époque où la NCSA force Mosaic Communications Corporation à changer de nom pour devenir Netscape.

Netscape travailla alors au développement d'une version orientée client de LiveScript. Quelques jours avant sa sortie, Netscape changea le nom de LiveScript pour JavaScript. Sun Microsystems et Netscape étaient partenaires, et la machine virtuelle Java étant de plus en plus populaire, ce changement de nom servait les intérêts des deux sociétés. Sun promit donc de ne pas poursuivre Netscape.[réf. nécessaire]

JavaScript et Netscape

En décembre 1995, Sun et Netscape annoncent (en) la sortie de JavaScript. En mars 1996, Netscape implémente le moteur JavaScript dans son navigateur web Netscape Navigator 2.0. Le succès de ce navigateur contribue à l'adoption rapide de JavaScript dans le développement web orienté client. Microsoft réagit alors en développant JScript, qu'il inclut ensuite dans Internet Explorer 3.0 en août 1996 pour la sortie de son navigateur.

Netscape soumet alors JavaScript à l'ECMA pour standardisation. Les travaux débutent en novembre 1996, et se terminent en juin 1997 par l'adoption du nouveau standard ECMAScript. Les spécifications sont rédigées dans le document Standard ECMA-262.

Versions

ECMA-262

Il existe à ce jour 5 versions du standard ECMA-262[1].

ECMAScript Edition 4 (ES4)

Aujourd’hui abandonné au profit ES5, les premiers travaux furent critiqués car ils modifiaient la nature du langage, qui passait d'un modèle de programmation avec les prototypes vers un modèle traditionnel basé sur les classes comme Java ou C#.net.

Ce modèle orienté prototype est pour beaucoup le modèle le plus performant en développement orienté objet.[réf. nécessaire]

Une première version du référentiel d'implémentation d'ECMAScript 4 est disponible depuis juin 2007[2].

Par ailleurs, Mozilla et Adobe Systems travaillent depuis des mois à l'implémentation des spécifications d'ECMAScript 4 dans JavaScript 2 et ActionScript 3. Pour concilier ces implémentations avec la création de la machine virtuelle Tamarin, Mozilla et Adobe Systems collaborent sur le projet Tamarin.

ECMAScript Edition 5 (ES5)

Toujours en développement, elle vise à améliorer la rétrocompatibilité avec les versions précédentes en revenant en arrière sur certain point introduit avec la version 4.

Comparatif

Edition Date de publication Différences avec la précédente édition
1 Juin 1997 Première édition
2 Juin 1998 Simple modification rédactionnelle pour se conformer au standard international ISO/IEC 16262.
3 Décembre 1999 Expressions rationnelles plus puissantes, meilleure manipulation des chaînes de caractères, levée des exceptions avec le mécanisme try/catch, meilleure gestion des erreurs...
4 Abandonnée La 4ème version a été abandonnée.
5 Décembre 2009 Clarifie beaucoup d'ambigüités de la 3ème version
Harmony En cours de développement Plusieurs nouveaux concepts.

E4X

ECMAScript for XML (E4X) est une extension XML au langage ECMAScript. Il s'agit bien d'un standard différent: ECMA-357 (en).

Dénomination

Application Dénomination Dernière version Correspondance ECMAScript
Navigateurs de type Gecko avec le moteur embarqué SpiderMonkey, dont Mozilla Firefox JavaScript 1.7 ECMA-262, edition 3 1
Internet Explorer JScript 5.6.7 ECMA-262, edition 3 6
Opera ECMAScript, avec des extensions JavaScript etJScript 1.3/1.5 ECMA-262, edition 3
KHTML based browsers, including KDE's Konqueror JavaScript 1.5 ECMA-262
Framework .NET de Microsoft JScript .NET et Managed JScript 8.0 ECMA-262, edition 3 2
Adobe Flash ActionScript 2

3

ECMA-262, edition 3 3

ECMA-262, edition 4 4

Adobe Acrobat JavaScript 1.5 ECMA-262, edition 3
General purpose scripting language DMDScript 1.06 ECMA-262
OpenLaszlo Platform JavaScript 1.4 ECMA-262, edition 3 5
iCab InScript 3.22 ECMA-262, edition 3
Implémentation d'XML dans les navigateurs basés sur Gecko et les programmes embarqués comme SpiderMonkey E4X ??? ECMA-357, edition 2

Note (1): E4X [1] en partie supporté par Gecko 1.8.1 ; pour d'autres fonctionnalités, voir Nouveautés dans JavaScript 1.7.

Note (2): Microsoft indique que JScript 8.0 supporte « presque toutes les caractéristiques d'ECMAScript Edition 3" mais ne donne pas de liste des caractéristiques non supportées.

Note (3): En plus du support d'ECMA-262 edition 3, ActionScript 2 inclus aussi un support des propriétés, fonctions et mécanisme qui avaient été propose dans une version préliminaire d'ECMA-262 edition 3. Il n'est pas connu si ActionScript restera synchronisé avec de futures modifications des spécifications d'ECMAScript.

Note (4): Adobe indique supporter une version préliminaire de l'édition 4 d'ECMA-262 [2]

Note (5): OpenLaszlo supporte partiellement ECMA-262 édition 3 [3]

Note (6): Un document "JScript Deviations from ES3" [4] a été publié par Microsoft.

Le support par Mozilla, (SpiderMonkey en langage C et Rhino en Java), sont utilisés par plusieurs programmes tiers, par exemple le Yahoo! Widget Engine (Konfabulator) et le langage de script pour Macintosh JavaScript OSA.

Safari utilise JavaScriptCore qui est basé sur la libraire KJS de KDE.

Correspondance

JavaScript JScript ECMAScript
1.0 (Netscape 2.0, mars 1996) 1.0 (IE 3.0 - et première version, août 1996)
1.1 (Netscape 3.0, août 1996) 2.0 (IE 3.0 - dernière version, janvier 1997)
1.2 (Netscape 4.0, juin 1997)
1.3 (Netscape 4.5, octobre 1998) 3.0 (IE 4.0, octobre 1997) edition 1 (juin 1997) / édition 2 (juin 1998)
1.4 (Netscape Server uniquement) 4.0 (Visual Studio 6, pas de nouvelle version d'IE)
5.0 (IE 5.0, mars 1999)
5.1 (IE 5.01)
1.5 (Netscape 6.0, nov 2000; mais aussi
plus tard les versions de Netscape etMozilla)
5.5 (IE 5.5, juillet 2000) edition 3 (décembre 1999)
5.6 (IE 6.0, octobre 2001)
1.6 (Gecko 1.8, Firefox 1.5, novembre 2005) édition 3, avec pour nouveautés: E4X, Array extras (e.g. Array.prototype.forEach), Array et String generics [5]
1.7 (Gecko 1.8.1, Firefox 2.0, octobre 2006)
2.0 édition 4 (en développement)

Annexes

Notes et références

  1. Alain Clapaud, « La nouvelle version 5 d’ECMAScript est votée », 10/12/2009. Consulté le 10/12/2009
  2. (en) Publication d'un site web dédié

Liens internes

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article ECMAScript de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • ECMAScript — Класс языка: мультипарадигменный: объектно ориентированное, обобщённое, функциональное, императивное, аспектно ориентированное, событийно ориентированное, прототипное программирование Появился в: 1995 Автор(ы) …   Википедия

  • Ecmascript — est un langage de programmation de type script standardisé par Ecma International dans le cadre de la spécification ECMA 262. Il s agit donc d un standard dont les spécifications sont implémentées dans la plupart des langages script, comme… …   Wikipédia en Français

  • ECMAScript — Saltar a navegación, búsqueda ECMAScript es una especificación de lenguaje de programación publicada por ECMA International. El desarrollo empezó en 1996 y estuvo basado en el popular lenguaje JavaScript propuesto como estándar por Netscape… …   Wikipedia Español

  • ECMAScript — es una especificación de lenguaje de programación publicada por ECMA International. El desarrollo empezó en 1996 y estuvo basado en el popular lenguaje JavaScript propuesto como estándar por Netscape corporation. Actualmente está aceptado como el …   Enciclopedia Universal

  • ECMAScript — „ECMAScript“ kalba statusas T sritis informatika apibrėžtis ↑Scenarijų kalba, standartizuota Europos informacinių ir komunikacinių sistemų standartų asociacijos (ECMA International) ECMA 262 specifikacija. Ši kalba atsirado kaip scenarijų kalbos… …   Enciklopedinis kompiuterijos žodynas

  • ECMAScript — ECMAScript,   eine Scriptsprache für HTML Dokumente, die dem von der ECMA herausgegebenen Standard ECMA 262 (dritte Ausgabe Dezember 1999) entspricht. Der Standard enthält die wesentlichen Elemente von Netscapes JavaScript sowie einige Punkte aus …   Universal-Lexikon

  • ECMAScript — Infobox programming language name = ECMAScript paradigm = Multi paradigm: prototype oriented, functional, imperative, scripting year = 1997 designer = Brendan Eich, Ecma International turing complete = Yes typing = duck, weak, dynamic… …   Wikipedia

  • ECMAScript — JavaScript ist eine Skriptsprache, die hauptsächlich für das DOM Scripting in Web Browsern eingesetzt wird. Dabei ist unter JavaScript die Gesamtheit aus den Eigenschaften des Browsers (beziehungsweise Clients oder Scripting Hosts) sowie des… …   Deutsch Wikipedia

  • ECMAScript 4 — …   Википедия

  • ECMAscript — …   Википедия


Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.