Warum JavaScript immer noch die Nummer 1 im Web ist
Lohnt es sich heute noch, JavaScript zu lernen? Unbedingt, drei von vier Webentwicklern arbeiten mit dieser Programmiersprache. Erfahren Sie in unserem Blog, wie JavaScript zu einer der mächtigsten und vielseitigsten Programmiersprachen wurde.
In diesem Artikel erfahren Sie mehr über: |
Kennst du Star Wars? Meine Frau nur, weil sie mich kennt.
In Anbetracht der heute möglichen und gesellschaftlich anerkannten Formen des Zusammenlebens muss ich kurz klarstellen, dass meine Lebenspartnerin meine «Nummer 1» ist. Deshalb nenne ich sie auch gerne meine «Frau», obwohl wir nicht verheiratet sind.
Wer jetzt einwendet, dass meine Frau ja auch die Einzige sei, mit der ich Dach, Bett und Tisch teile, hat völlig Recht: Das eine schliesst das andere nicht aus.
Genauso halte ich es mit JavaScript (JS) und dem World Wide Web:
JavaScript ist im Prinzip die einzige Web-Programmiersprache für Clients, aber sie ist (und bleibt) die Nummer 1.
Das sehe übrigens nicht nur ich so, sondern auch das vielbeachtete Programmiersprachen Ranking von RedMonk. Kein Wunder, ist JavaScript laut dem Stack Overflow Developer Survey 2022 seit 10 Jahren die am meisten genutzte Programmiersprache. Drei von vier Entwicklerinnen und Entwickler nutzen JavaScript.
Einwände? Gerne! Einfach in die Kommentare schreiben.
Ach ja, und dass man Star Wars durchaus mit JavaScript verknüpfen kann, zeigt dieser Beitrag auch.
Die Geschichte von JavaScript: Wie hat sich die Programmiersprache entwickelt?
JavaScript erblickte 1995 das Licht der Welt.
Als Mutter bezeichne ich die Firma Netscape Communications, die sich mit dem Netscape Navigator einen festen Platz in den Herzen der ersten WWW-Nutzer verdiente. Damals hiess JavaScript noch LiveScript. Erst als die Firma Sun Microsystems, sozusagen als Vater, hinzukam, erhielt es den Namen JavaScript.
Netscape gibt es nicht mehr. Aus ihm ging der Netscape Navigator hervor, der wiederum von der Mozilla Foundation übernommen wurde und sich dann in AOL auflöste.
Auch Sun Microsystems existiert nicht mehr. Es fusionierte mit Oracle. Ihr Vermächtnis: die Programmiersprache Java.
Für alle, die die Star Wars-Filme kennen, ein kleiner filmischer Vergleich: Ich stelle mir Padme Amidala als Mutter (Netscape) und Anakin Skywalker als Vater (Sun Microsystems) von Luke Skywalker (JavaScript) vor. Und ja… aus Anakin Skywalker wurde Darth Vader (Java).
Um kein böses Blut aufkommen zu lassen: Ich schätze Java als Sprache sehr – auch Darth Vader hat am Ende von Episode 6 den bösen Imperator von der Brüstung geworfen – Java ist einfach nicht JavaScript. Aber dazu vielleicht mehr in einem anderen Blog.
Wie sich JavaScript technisch entwickelt hat, lässt sich sehr schön in der Versionsgeschichte auf Wikipedia nachlesen. Mit Begriffen wie “async/await” oder einem “Array#{flat,flatMap}” können aber wahrscheinlich nur Programmiererinnen und Programmierer etwas anfangen. Also kurz zusammengefasst: JavaScript hat sich technisch wirklich weiterentwickelt!
Weniger technisch liest sich die Geschichte von JavaScript etwa so:
Die Anfänge von JavaScript-Anfänge 1995-1999: Cool, Mouseover!
Ursprünglich war JavaScript dazu gedacht, die Eigenschaften eines HTML-Dokuments auszulesen oder hineinzuschreiben und auf Benutzereingaben zu reagieren.
So war es 1998 noch ein Highlight auf einer HTML-Seite, wenn man mit der Maus über ein Bild fuhr und dieses durch ein anderes austauschte. Sehr schick und hip für Buttons!
Heute erstellt man Buttons nicht mehr mit Bildern und CSS erledigt den Mouseover-Effekt (= Hover-Effekt) für uns.
DHTML 2000 – 2004: JavaScript macht HTML dynamisch
Um das Jahr 2000 herum wurde das Kürzel DHTML zum Trend, stellvertretend für alle aufklappbaren Menüs, Drag and Drop oder das automatische Ausfüllen von Formularfeldern. Überall musste DHTML sein, auch wenn die verschiedenen Browser noch unterschiedlich mit JavaScript umgingen.
Das Zusammenspiel von HTML, CSS und JavaScript wurde dann aber mit der Zeit immer robuster, da die verschiedenen Browser keine Sonderwege mehr gingen und sich der Standard immer mehr durchsetzte.
Allerdings war dieser Standard umständlich zu handhaben und für Programmieranfänger nicht wirklich geeignet. Man brauchte viele Zeilen Code, um grundlegende Aufgaben zu erledigen oder von Benutzern geschätzte Funktionalitäten innerhalb einer Webseite zu implementieren.
Zur Klarstellung: Ich spreche hier vom Zusammenspiel zwischen JavaScript und dem HTML-Document-Object-Model und nicht von JavaScript als Programmiersprache an sich.
Da in diesem Blog auch Star Wars vorkommen soll: Pures JavaScript auf einer Webseite zu programmieren fühlt sich an, als würde man «Star Wars Episode I – Die dunkle Bedrohung (1999)» als VHS-Kassette in den Videorekorder legen und erst einmal zurückspulen müssen, bevor es losgehen kann. Zeit für Blu-ray!
Die helle Seite der Macht 2005-2009: jQuery
Ab 2005 kam die Rettung für das totgeglaubte JavaScript: jQuery.
Warum es keine Frage ist, ob JavaScript oder jQuery, habe ich in einem früheren Blogbeitrag erklärt: jQuery ist JavaScript!
In einem Meme sah ich einmal Luke Skywalker gegen Darth Vader kämpfen. Luke trug ein jQuery T-Shirt und sagte, dass er niemals zur dunklen Seite der Macht wechseln würde. Darth trug ein JavaScript T-Shirt und sagte: «Ich bin dein Vater!»
AngularJS 2010-2015: Next-Level-HTML dank JavaScript
Als JavaScript ungefähr 15 Jahre alt war, stellten sich einige Entwickler folgende Frage:
Wenn man damals schon gewusst hätte, was man heute alles mit HTML machen möchte, wie wäre dann HTML aufgebaut worden?
Als Ergebnis dieser Frage war AngularJS von Google. Es hat die Frontend-Entwicklung massiv revolutioniert. Das Coole an AngularJS ist, dass es zu 100% aus JavaScript besteht.
Wer mehr über AngularJS wissen möchte, dem empfehle ich meinen Blogbeitrag über den Vergleich von JavaScript, jQuery und Angular.
2016-2022: Klassen, bitte! Vererbung, bitte! Module bitte! Ach ja… und Typisierung bitte!
Für alle, die bei dieser Überschrift nur Bahnhof verstehen: Keine Sorge, das ist für eingefleischte Programmierer, die JavaScript manchmal etwas skeptisch gegenüberstehen.
Sechs Jahre nach AngularJS, also 2016, erschien die Nachfolgeversion von AngularJS namens Angular. Heute, während ich diesen Artikel schreibe, gibt es bereits die Version 15.
Es muss also etwas Gutes sein. Wie Star Wars.
Und tatsächlich: Spätestens mit Angular kann sich kein objektorientierter Programmierer mehr davor drücken, die Welt von JavaScript zu betreten, nur weil JavaScript keine Klassen unterstützt. Angular nutzt zwar die Programmiersprache TypeScript, kompiliert diese aber schlussendlich in HTML, CSS und (was zu beweisen war) JavaScript.
Warum? Ein Beispiel findet sich in diesem Blogbeitrag: Angular: Clientseitig programmiert man heute «eckig»
Anwendungsgebiete von JavaScript: Was können Sie mit JavaScript programmieren?
Und heute? Wenn ich eine Liste zusammenstelle, wo ich ich immer wieder mit JavaScript programmiere, kommt folgendes dabei heraus:
1 Bei der Erstellung von Mobile-Applikationen
Hier finden Sie eine Liste von JavaScript Frameworks für Mobile Apps.
2 Auf (Web-)Servern, z.B. mit nodeJS
Da gibt’s mehr Info zu nodeJS.
3 Für Automatisierungen in Adobe
Hier finden Sie zum Beispiel Anleitungen für die Skripterstellung in Photoshop oder Illustrator.
4 Für PDF-Dokumenten oder PDF-Formulare
Auf diesem Blog erkläre ich, wie man dynamische Hilfetexte für PDF-Dokumente zusammenklickt. Zwar mit JavaScript, aber ohne selbst eine Zeile Code zu schreiben.
5 Um ein HTML5-Canvas in Adobe Animate zu erstellen
Hier gibt’s die JavaScript Basics dazu.
6 In Adobe After Effects, um Videos mit berechneten Effekten zu versehen
Mehr zur Nutzung von Scripts in After Effects, erfahren Sie auf der Hilfeseite von Adobe.
7 Für erweiterte Funktionen in der G-Suite (GoogleDocs, GoogleSheets und GooglePresentations)
Interessiert Sie auch? Hier finden Sie einen Guide dazu.
Grundsätzlich wird JavaScript am häufigsten in der Frontend-Webentwicklung eingesetzt, neben HTML und CSS wird JavaScript verwendet, um dynamische Websites zu erstellen oder um responsive oder interaktive Elemente hinzuzufügen. Aber auch Browserspiele und mobile Apps können mit JavaScript programmiert werden.
Nicht zuletzt ist JavaScript auch für die Backend-Webentwicklung wichtig geworden. Zum Beispiel für die Programmierung von Web- und Server-Applikationen.
Was sind die Vorteile und Nachteile von JavaScript?
Ich habe einmal in einem Kurs gesagt.: «Alles hat Vor- und Nachteile ausser JavaScript – es hat nur Vorteile!»
Mit dieser Aussage kann ich immer noch gut leben.
Meine Frau ist da natürlich ganz anderer Meinung, denn sie interessiert sich überhaupt nicht für Programmiersprachen und würde auch gar nicht erst anfangen, eine zu lernen. (Aber sie interessiert sich ja auch nicht für Star Wars).
Aber für alle, die mit dem Gedanken spielen, eine Programmiersprache zu lernen, ist JavaScript sehr zu empfehlen.
Die Vorteile von JavaScript auf einen Blick:
- Der Einstieg in JavaScript ist ohne besondere Hilfsmittel möglich, da es im Klartext (also mit einem einfachen Texteditor) geschrieben wird.
- JavaScript ist (wie HTML und CSS) plattformübergreifend und schert sich nicht um Betriebssysteme oder ähnliches.
- JavaScript läuft im Browser – und ohne Browser läuft heutzutage (fast) nichts.
- Anfängerinnen und Anfänger können mit JavaScript die rudimentären Grundlagen des Programmierens erlernen, Profis können sich in TypeScript suhlen.
- JavaScript ist aus der heutigen Web- und Mobile-Welt nicht mehr wegzudenken. Wer JavaScript kann, findet immer etwas zu tun.
- Deshalb gibt es auch viel Material zu JavaScript im Internet und entsprechende Communities.
- Und: Es hat keine Kalorien! Im Gegensatz zu den Chips, die man bei einem guten Star-Wars-Film in sich hineinstopft.
Ich verzichte bewusst darauf, die Nachteile von JavaScript aufzuzählen.
Aus 3 Gründen:
- Die Dinge, die oft als Nachteile bezeichnet werden, haben meiner Meinung nach mehr mit Menschen als mit JavaScript zu tun.
Was für HTML gilt auch für JavaScript: Nur weil es funktioniert, ist es noch lange nicht gut geschrieben. - Dass JavaScript-Fehler schwer zu finden sind, halte ich für ein Gerücht.
Mit den richtigen Tools (z.B. den Google Chrome Developer Tools) und einer guten Strategie, ist das genauso einfach wie in jeder anderen Programmiersprache. - Dass JavaScript nicht für grosse Anwendungen gedacht ist, spielt meiner Meinung nach keine Rolle. Ich bin ein Verfechter von Microservices und modularen Anwendungen. Gross war in der Welt der Applikationen gestern.
Lohnt es sich heute noch JavaScript zu lernen?
Wer sich überlegt, ins Programmieren einzusteigen, macht mit JavaScript nichts, aber wirklich nichts falsch! Wer als eingefleischter Programmierer Lust auf Abwechslung hat, kann mit JavaScript heute auch objektorientiert und typisiert in die Welt des WWW eintauchen.
Wer im Web programmieren möchte, kommt um JavaScript sowieso nicht herum. Egal wie die Frameworks heute alle heissen.
Was denken Sie? Ich freue mich über Ihre Kommentare, egal ob zu JavaScript oder Star Wars.