Die Relevanz von TypeScript im Jahr 2022

Avatar of Mamta Dalal
Mamta Dalal am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Es ist 2022. Und die aktuelle Relevanz von TypeScript ist unbestritten. TypeScript hat die Frontend-Entwicklererfahrung dominiert, laut vielen, vielen Berichten. Mittlerweile wissen Sie wahrscheinlich bereits, dass TypeScript eine Obermenge von JavaScript ist und auf JavaScript aufbaut, indem es Syntax für Typdeklarationen, Klassen und andere objektorientierte Features mit Typüberprüfung hinzufügt.

Und wenn ich sage dominiert, meine ich, dass TypeScript seit seiner Einführung im Jahr 2012 lautstark auf der Bühne explodiert ist.

The relevance of TypeScript illustrated in a line chart showing the popularity of multiple languages since 2014. TypeScript's popularity has risen the fastest among 10 popular languages and ranks fourth overall.
Quelle: State of the Octoverse 2021 (GitHub)

Ein solches Wachstum ist unglaublich, besonders wenn man bedenkt, dass es 2017 *wirklich* an Fahrt aufgenommen hat. Aber wenn wir ins Jahr 2022 eintreten, wie relevant wird TypeScript dann noch sein? Es ist nicht so, dass TypeScript auf diese Weise für immer weiter wachsen wird... oder?!

Es ist interessant, die Idee ein wenig zu untersuchen, um zu sehen, wo TypeScript heute steht und wie es auch in Zukunft eine Rolle in der Frontend-Entwicklung spielen wird. Jake Albaugh hat sich selbst mit der Relevanz von TypeScript beschäftigt, aber aus der Perspektive, ob JavaScript-Kenntnisse *Sie* als Entwickler relevant machen.

Also, wie sieht die zukünftige Relevanz von TypeScript aus? Mal sehen.

Die Wurzeln von TypeScript

Okay, wir wissen also, dass TypeScript JavaScript um Syntax erweitert. Diese Syntax wird von TypeScript's Compiler verwendet, um Codefehler aufzuspüren, bevor sie auftreten, und gibt dann reines JavaScript aus, das Browser verstehen können. Erwähnenswert ist auch, dass TypeScript von Microsoft gepflegt wird und unter der Apache 2-Lizenz steht.

A blue oval labeled TypeScript code with an arrow to the right pointing at a green oval labeled TypeScript compiler, followed by another arrow pointing right toward a red oval labeled JavaScript code.

Und wir können nicht wirklich über TypeScript sprechen, ohne auch ECMAScript (ES) zu erwähnen, den JavaScript-Standard und die Skriptsprachenspezifikation, die von ECMA International standardisiert wurde. Die Namenskonvention von JavaScript begann mit ES1 und entwickelte sich zu ES6. Die neueste Version, die 12. Auflage – oder ECMAScript 2021 – wurde im Juni 2021 veröffentlicht.

TypeScript ist eine strenge Obermenge von ECMAScript 2015. Das bedeutet, dass JavaScript-Syntax auch TypeScript-Syntax ist. Umgekehrt kann ein TypeScript-Programm JavaScript mühelos verarbeiten.

Concentric circles in blue, orange, green, and magenta showing how TypeScript encompasses ES 2016, ES 2015, and ES 5.
Quelle: Seema Saharan

Es ist wichtig, all dies zu wissen, denn wir müssen wissen, woher TypeScript seine Wurzeln hat, um seine mögliche Zukunft zu untersuchen.

TypeScript-Komponenten

Es gibt drei grundlegende Komponenten von TypeScript, die es so großartig machen. Nicht nur erhalten wir die bereits erwähnte Typüberprüfung, die mit der TypeScript-Sprache einhergeht, sondern auch den TypeScript-Compiler und den Sprachdienst.

A tree chart showing TypeScript at the top with three branches representing its language, compiler, and language service. Each of those has a single branch explaining what those components do.

Das sind die Teile, die TypeScript, sozusagen, relevant halten. Die Sprache ist das, was Entwickler lieben zu schreiben. Der Compiler ist das, was die Sprache für Browser interpretiert. Der Dienst verarbeitet die Sprache bei Bedarf mit blitzschneller Geschwindigkeit. Ohne diese wäre TypeScript einfach nicht dasselbe.

TypeScript-Unterstützung

Es gibt noch ein weiteres wichtiges Element für die Relevanz von TypeScript, das oft übersehen wird: es wird von Texteditoren hervorragend unterstützt. Die Relevanz von TypeScript ist nur so gut, wie es zugänglich und für fast jeden Frontend-Entwickler erlernbar ist.

TypeScript wurde anfangs nur in Microsofts Visual Studio Code-Editor unterstützt. Klingt logisch, oder? Ich meine, TypeScript wird schließlich von Microsoft gepflegt. Aber als TypeScript an Popularität gewann, begannen immer mehr Code-Editoren und IDEs, es entweder nativ oder mit Plugins zu unterstützen.

Einige der beliebtesten Editoren und IDEs, neben Visual Studio Code, sind

Und mit mehr Unterstützung wächst auch die Relevanz von TypeScript. Die Tatsache, dass Sie fast jeden Code-Editor verwenden können und mit dem Schreiben von TypeScript-Code beginnen können, macht es zunehmend zu einer bevorzugten Wahl, da es einfach dort verfügbar ist, wo Sie es wollen.

Die Evolution von TypeScript

Von seiner ersten Veröffentlichung im Jahr 2012 bis heute (Anfang 2022) gab es in jeder Version von TypeScript viele Verbesserungen, wie zum Beispiel

  • TypeScript 1.6 führte die Dateiendung .tsx ein, die JSX in TypeScript-Dateien ermöglichte und den neuen as-Operator zum Standard für Casting machte.
  • TypeScript 2 brachte eine wesentliche Verbesserung, indem es Entwicklern ermöglichte, Variablen optional keine Nullwerte zuzuweisen.
  • Version 2.3 von TypeScript führte Unterstützung für ES6-Features ein, wie z. B. Generatoren und Iteratoren.
  • TypeScript 3 brachte Sprachverbesserungen, wie z. B. Tupel in REST-Parametern und Spread-Ausdrücken.
  • TypeScript 4 (wir sind derzeit bei 4.5.2 zum Zeitpunkt des Schreibens) setzt die Evolution mit Verfeinerungen von Tupeln, Template-Literal-Typen, intelligenter Typalias-Bewahrung und Verbesserungen an Awaited und Promise fort.

Dies ist genau die Geschwindigkeit, mit der Sie erwarten könnten, dass eine aufstrebende Programmiersprache iteriert und neue Features veröffentlicht. Auch hier ein guter Kontext für die Bewertung der Relevanz von TypeScript für die Zukunft.

Die Popularität von TypeScript

Wir haben bereits festgestellt, dass TypeScript, nun ja, super beliebt ist. Die Grafik, die diesen Beitrag eröffnet hat, zeigte ein rasantes Wachstum von TypeScript innerhalb weniger Jahre auf den vierten Platz der beliebtesten Sprachen. Aber glauben Sie nicht nur mir und GitHub (es gehört schließlich Microsoft). Hier ist eine Reihe von veröffentlichten Forschungsarbeiten aus verschiedenen Quellen, die dasselbe sagen.

RedMonk

RedMonk, ein Analyseunternehmen der Entwicklungsbranche, hat dies zu sagen über die Einstufung von TypeScript auf Platz acht in seiner Rangliste der beliebtesten Sprachen für 2021.

Hat [TypeScript] die Kapazität, aufzusteigen und langfristige etablierte Sprachen wie C#, C++ oder sogar PHP zu übertreffen, oder ist TypeScript im Wesentlichen am oder nahe am Limit seines Potenzials? Das ist unmöglich mit Sicherheit zu sagen, aber es ist interessant zu bemerken, dass TypeScript vor einem Jahr zu dieser Zeit sechs Punkte hinter den Sprachen auf dem fünften Platz im kombinierten Score zurücklag, auf dem die Rankings basieren, aber in dieser Runde betrug der Abstand nur zwei Punkte. Vergangene Leistung sagt natürlich nicht immer zukünftige Leistung voraus, aber es deutet zumindest darauf hin, dass TypeScript möglicherweise noch etwas Spielraum hat.

PYPL Index

Der PYPL Index ist ein Maß für Google-Suchen nach Tutorials für Programmiersprachen. Es ist keine exakte Wissenschaft, aber ein guter Indikator für Interesse. Und im Laufe der Zeit scheint TypeScript einen flachen Trend zu zeigen. TypeScript liegt derzeit auf Platz acht, und verglichen mit vor einem Jahr um diese Zeit zeigt PYPL, dass TypeScript insgesamt einen flachen Trend hat, während andere Sprachen wie Python und C++ im Jahresvergleich steigen.

Stack Overflow 2021 Developer Survey

Laut der 2021 Developer Survey von Stack Overflow ist TypeScript ungefähr so beliebt, wie PYPL es einschätzt, und belegt den siebten Platz der beliebtesten Sprachen, bewertet von etwa 83.000 Entwicklern.

An orange bar chart on a dark background showing TypeScript ranking seventh behind the likes of JavaScript, HTML/CSS, Python, SWL, Java, and Node.

Die jährliche Umfrage von Stack Overflow ist eine der glaubwürdigsten und am meisten erwarteten Entwicklerumfragen. Sie nutzt eine riesige Entwicklerbasis aus aller Welt, um zu ihren Schlussfolgerungen zu gelangen. Und wie relevant ist das für die Frontend-Community? Nun, es ist nicht nur die siebtbeliebteste Sprache, sondern auch die zweitbeliebteste Technologie, mit der Entwickler am liebsten arbeiten (gefolgt von Python) und die drittbeliebteste Sprache (hinter Rust und Clojure).

Quelle: Stack Overflow Developer Survey 2021

2020 State of JavaScript

Diese jährliche Umfrage (die nächste ist jetzt geöffnet!) zeigt, dass TypeScript mit einer glänzenden Zufriedenheitsrate von 93 % (gegenüber 89 % im Jahr 2019) unter den Entwicklern aufwarten kann, was Spitzenplatzierung bedeutet. Es belegte auch den ersten Platz bei Interesse (70 %, plus 66 %), Nutzung (78 %, plus 66 %) und Bekanntheit (100 %, die erschreckend flach gegenüber 2019 ist).

Screenshot of the 2021 State of JavaScript survey chart of popular JavaScript flavors. TypeScript was second in 2016 but took first place in 2017 and has remained there since, above PostScript, Reason, Elm, and ClojureScript.

GitHut 2.0 Language Rankings

Dieses Ranking ist eine Analyse, die mit GitHub interagiert, um die meistgenutzten Sprachen auf GitHub zu ermitteln. Und es zeigt die Relevanz von TypeScript, da TypeScript im ersten Quartal 2021 den siebten Platz belegte, bevor es im vierten Quartal auf den vierten Platz sprang, und das mit dem höchsten jährlichen Zuwachs.

Okay, es ist also klar, dass TypeScript eine große Sache ist. Aber wie relevant wird es auch in Zukunft sein?

Die Relevanz von TypeScript im Jahr 2022 und darüber hinaus

Bisher habe ich versucht, ein Bild zu zeichnen, das zeigt, wo TypeScript in die Frontend-Entwicklungslandschaft passt, und wie es sich schnell zu einem ausgereiften und ernsthaften Konkurrenten als Programmiersprache entwickelt hat und schnell sowohl zur bevorzugten Programmiersprache als auch zu der wird, die die Leute am meisten mögen.

Mit anderen Worten: TypeScript ist heute relevant.

Wenn wir jedoch eine Vermutung anstellen wollen, wohin der aktuelle Erfolg von TypeScript führt, lohnt sich ein Blick auf die offizielle TypeScript-Roadmap auf GitHub.

Hier ist, was wir erwarten können

  • typeof Klassenänderungen
  • Mehr Code vor Super-Aufrufen in Unterklassen zulassen
  • Generalisierte Indexsignaturen
  • --noImplicitOverride und das override-Schlüsselwort
  • Statische Indexsignaturen
  • unknown als Typ für Catch-Klausel-Variablen verwenden
  • Unterstützung für nominale Typisierung untersuchen
  • Deklarationen flach machen
  • ES-Decorator-Vorschlag implementieren
  • Umgebungs-, veraltete und bedingte Decorators untersuchen
  • Teilweise Typargumentinferenz untersuchen
  • Schnellkorrektur zum Erstellen lokaler @types-Pakete implementieren
  • Fehlermeldungen in Haiku oder jambischem Pentameter untersuchen
  • Decorators für Funktionsausdrücke und Pfeilfunktionen implementieren

Ich denke, all diese geplanten Features sind aufregend und werden eine große Rolle bei der Aufrechterhaltung der Relevanz von TypeScript für die absehbare Zukunft spielen. Und obwohl ich denke, dass sie alle eine tiefere Diskussion wert sind, sind hier ein paar, die meiner Meinung nach für TypeScript im Jahr 2022 und darüber hinaus von zentraler Bedeutung sind.

Deklarationen flach machen

Der Vorschlag zur Vereinheitlichung von Deklarationen zielt beispielsweise darauf ab, Deklarationen für TypeScript-Projekte zu bündeln, sodass eine Bibliothek mit einer einzigen TypeScript-Datei konsumiert werden kann, unabhängig davon, wie viele Module sie intern enthalten mag.

Die Idee hinter der Vereinheitlichung von Deklarationen ist, dass eine einzige amalgamierte und abgeflachte .d.ts-Datei zusätzlich zu einer einzigen Ausgabe .js-Datei vom TypeScript-Compiler ausgegeben werden sollte. Zugriffsmodifikatoren sollten bei der Generierung der DTS berücksichtigt und eingehalten werden. Eine einzige Deklarationsdatei mit abgeflachten Deklarationen erleichtert Entwicklern die Arbeit erheblich und verbessert die Wartbarkeit auf lange Sicht.

Umgebungs-, Veraltete und bedingte Decorators

Design-Time-Decorators – wie Umgebungs- und bedingte Decorators – sind ein weiteres Feature, auf das man sich freuen kann. Decorators ermöglichen es Entwicklern, Annotationen und Metadaten auf deklarative Weise zu bestehendem Code hinzuzufügen. In TypeScript hat jeder Decorator einen speziellen Namen, der mit @ beginnt und nicht in der konvertierten JavaScript-Ausgabe erscheint, aber in .d.ts-Ausgaben beibehalten werden kann.

Stellen Sie sich zum Beispiel vor, Sie könnten eine Warnung ausgeben, wann immer jemand versucht, eine veraltete Methode oder Eigenschaft zu verwenden, damit er auf eine neuere Bibliotheksversion upgraden kann. Durch die zukünftige Aufnahme von umgebenden, veralteten und bedingten Decorators als Teil der TypeScript-Spezifikation bietet die Sprache Entwicklern leistungsfähigere Möglichkeiten, ihren Code zu annotieren und Metadaten darin einzuschließen.

Decorators für Funktionsausdrücke/Pfeilfunktionen

Decorators für Funktions- und Pfeilausdrücke sind ein weiteres Feature, das meiner Meinung nach zur anhaltenden Relevanz von TypeScript beitragen wird. Das Hinzufügen von Annotationen oder Metadaten zu diesen Ausdrücken wird es Entwicklern ermöglichen, zur Laufzeit Informationen darüber zu erhalten, auf welche der Decorator angewendet wurde.

Untersuchung von Fehlermeldungen in Haiku oder jambischem Pentameter

Okay, vielleicht geht es bei diesem hier nicht so sehr um die Relevanz des robusten Funktionsumfangs von TypeScript, aber ich denke, die Persönlichkeit, die es der Sprache verleiht, ist Teil des Gesamtpakets, das TypeScript zu einem Vergnügen macht. Wie cool (und angenehm) wäre es, eine Fehlermeldung wie diese zu erhalten?

Sicher besser als eine programmatische Nachricht, die sich manchmal wie eine Zurechtweisung anfühlen kann! Und obwohl in den letzten zwei Jahren kein Fortschritt bei dieser vorgeschlagenen Funktion erzielt wurde, existiert sie weiterhin auf der offiziellen Roadmap, was bedeutet, dass sich irgendjemand schließlich damit beschäftigen wird.


Microsoft hat im August 2021 die Vorschau 3 von Visual Studio 2022 angekündigt. Im August 2021 gab es viel Grund zur Begeisterung mit dieser Veröffentlichung, wie z. B. neue JavaScript- und TypeScript-Tools zur Verbesserung der Erfahrung für Single-Page-Anwendungen und Frontend-Entwicklung. Außerdem enthielt es einen neuen JavaScript/TypeScript-Projekttyp, um Entwicklern den Aufbau eigenständiger Angular-, React- und Vue-Projekte zu erleichtern. Dazu kommt die Verbesserung, dass Visual Studio die nativen CLIs jedes JavaScript-Frameworks nutzt, um Frontend-Projektvorlagen zu erstellen.

All das soll sagen, dass sich TypeScript nicht nur weiterentwickelt, sondern explodiert und nur an Dynamik gewinnt, während wir uns im Jahr 2022 einfinden. Also, ja, TypeScript ist 2022 relevant ... und wird es noch eine Weile bleiben.