TC39 und seine Beiträge zu ECMAScript

Viele Leute sind verwirrt darüber, was JavaScript und was ECMAScript ist. Manchmal ist es schwer zu sagen, wie sie miteinander verbunden sind und welche Rolle ECMA International und TC39 bei der Standardisierung von JavaScript spielen.

In diesem Blog-Beitrag werde ich TC39 und seine Beiträge zu ECMAScript diskutieren.

Beginnen wir mit allen grundlegenden Terminologien, die für JavaScript und ECMAScript verwendet werden.

Was ist ECMAScript?

ECMAScript ist eine Standard-Skriptsprache, die in Zusammenarbeit mit Netscape und Microsoft entwickelt wurde und hauptsächlich von JavaScript von Netscape abgeleitet ist. JavaScript ist eine weit verbreitete Skriptsprache, die auf Webseiten verwendet wird, um das Aussehen oder Verhalten des Benutzers zu beeinflussen.

ECMA-262 ist ein von ECMA International veröffentlichter Standard. Es enthält die Spezifikation für eine allgemeine Skriptsprache, die als ECMAScript bekannt ist.

Ein bisschen mehr über JavaScript

JavaScript ist eine Skriptsprache, mit der Sie dynamisch aktualisierte Inhalte erstellen, Multimedia steuern, Bilder animieren und so ziemlich alles andere tun können. (Okay, nicht alles, aber es ist erstaunlich, was Sie mit ein paar Zeilen JavaScript-Code erreichen können.)

Was ist ECMA?

ECMA ist eine Standardorganisation für Informations- und Kommunikationssysteme. ECMA zielt darauf ab, Standards und technische Berichte zu entwickeln, um den Einsatz von Informationskommunikationstechnologie und Unterhaltungselektronik zu erleichtern und zu standardisieren. Es fördert die korrekte Verwendung von Standards, indem es die Umgebung beeinflusst, in der sie angewendet werden, und veröffentlicht diese Standards und Berichte in elektronischer und gedruckter Form.

Und jetzt stellen wir die hart arbeitenden Leute hinter ECMAScript vor: TC39.

Was ist TC 39?

TC39 bedeutet Nummer 39 des Technischen Komitees. Es ist Teil von ECMA, der Institution, die die JavaScript-Sprache gemäß der Spezifikation „ECMAScript“ standardisiert. Es arbeitet an der Standardisierung der plattformübergreifenden, herstellerneutralen Programmiersprache ECMAScript für allgemeine Zwecke. Dies umfasst die Sprachsyntax, Semantik, Bibliotheken und ergänzende Technologien, die die Sprache unterstützen.

TC 39 arbeitet an :

  • Pflege und Aktualisierung des Standards für die Programmiersprache ECMAScript.
  • Identifizieren, Entwickeln und Verwalten von Standards für Bibliotheken, die die Funktionen von ECMAScript erweitern.
  • Entwicklung von Testsuiten, mit denen die korrekte Umsetzung dieser Standards überprüft werden kann.
  • Beitrag mit ausgewählten Standards zum ISO / IEC JTC 1-Ausschuss.
  • Bewertung und Prüfung von Vorschlägen für ergänzende oder zusätzliche Technologien.

Seit der Veröffentlichung von ES6 hat TC 39 den Prozess der Vorschlagsvorsorge optimiert, um den modernen Erwartungen gerecht zu werden. Der neue Prozess verwendet eine Obermenge von HTML, um die Vorschläge zu formatieren. Sie verwenden GitHub-Pull-Anfragen, die dazu beigetragen haben, die Teilnahme der Community zu fördern. Die Anzahl der eingereichten Vorschläge nahm ebenfalls zu.

Die Spezifikation ist jetzt eher ein Lebensstandard, was bedeutet, dass Vorschläge schneller angenommen werden und wir nicht Jahre darauf warten, dass eine neue Ausgabe der Spezifikation herauskommt.

Eine allgemeinere Ansicht

Durch Lesen der ECMAScript-Spezifikation lernen Sie, wie Sie erstelleneine Skriptsprache. In der JavaScript-Dokumentation erfahren Sie, wie Sie diese Skriptsprache verwenden.

Angebotsbearbeitung

Stufe 0: Strawman

Jede Diskussion, Idee, Änderung oder Ergänzung, die noch nicht als formeller Vorschlag eingereicht wurde, wird derzeit als „Strohmann“ -Vorschlag betrachtet. Nur Mitglieder von TC39 können diese Vorschläge erstellen, und es gibt heute über ein Dutzend aktive Strohmann-Vorschläge.

Stufe 1: Vorschlag

In dieser Phase wird ein Vorschlag formalisiert und es wird erwartet, dass er Querschnittsthemen, Interaktionen mit anderen Vorschlägen und Umsetzungsprobleme berücksichtigt. Vorschläge in dieser Phase identifizieren ein diskretes Problem und bieten eine konkrete Lösung für dieses Problem.

In dieser Phase enthält der Vorschlag häufig eine allgemeine API-Beschreibung, Verwendungsbeispiele und eine Diskussion der internen Semantik und Algorithmen. Diese Vorschläge werden sich wahrscheinlich erheblich ändern, wenn sie den Prozess durchlaufen.

Stufe 2: Entwurf

Vorschläge in dieser Phase sollten einen ersten Entwurf der Spezifikation enthalten.

Zu diesem Zeitpunkt ist es für Implementierer sinnvoll, zur Laufzeit mit tatsächlichen Implementierungen zu experimentieren. Die Implementierung kann in vielen Formen erfolgen: als Polyfill, Benutzercode, der die Laufzeit dazu bringt, den Vorschlag einzuhalten, eine Engine-Implementierung (die den Vorschlag nativ unterstützt) oder durch einen Build-Time-Compiler wie Babel.

Stufe 3: Kandidat

Vorschläge in dieser Phase sind Kandidatenempfehlungen. In diesem fortgeschrittenen Stadium müssen der Spezifikationseditor und die benannten Prüfer die endgültige Spezifikation unterschrieben haben. Es ist unwahrscheinlich, dass sich ein Vorschlag für Stufe 3 über die Behebung von Problemen in freier Wildbahn hinaus ändert.

Die Implementierer hätten ebenfalls Interesse an dem Vorschlag bekunden sollen - ein Vorschlag ohne Unterstützung durch die Implementierer ist tot im Wasser. In der Praxis werden Vorschläge mit mindestens einer Browser-Implementierung, einer High-Fidelity-Polyfüllung oder auf Unterstützung eines Transpilers zur Erstellungszeit wie Babel auf diese Ebene verschoben.

Stufe 4: Fertig

Schließlich erreichen Vorschläge dieses Stadium, wenn mindestens zwei unabhängige Implementierungen die Abnahmetests bestehen.

Was kommt als nächstes?

Vorschläge, die bis zur vierten Stufe reichen, werden in die nächste Überarbeitung von ECMAScript aufgenommen. Wenn die Spezifikation ihre jährliche Ratifizierung als Standard durchläuft, wird der Vorschlag als Teil davon ratifiziert.

Auf diese Weise werden Ideen zur Weiterentwicklung der ECMAScript-Sprache akzeptiert und der nächsten Überarbeitung von ECMAScript hinzugefügt. Und wir sind alle dankbar für die Arbeit von TC39, die von unschätzbarem Wert ist.

Damit haben wir das Ende unserer Diskussion über TC39 und seine Beiträge zu ECMAScript erreicht.

Danke fürs Lesen.

Quellen: TC 39 Process, ECMA International