JavaScript bezeichnet eine Programmiersprache, die unter anderem zur Dynamisierung von Webseiten verwendet wird. 1995 entwickelte der US-amerikanische Programmierer Brendan Eich die Scriptsprache für die Netscape Communications Corporation. Heute ist die Skriptsprache eine Marke der Oracle Corporation.
Standardisierung
Die Normungsorganisation ECMA veröffentlichte 1997 ECMAScript – eine Standardisierte Version der Scriptsprache. Seitdem entspricht der international anerkannte Standard ECMA-262 JavaScript. Zur gesamten Doku geht’s hier: https://www.ecma-international.org/publications-and-standards/standards/ecma-262/
Statische & dynamische Webseiten
Früher waren Webseiten statisch und vergleichbar mit einem digitalen Katalog oder einer Broschüre. Auf eine Anfrage schickt der Server eine einfache HTML-Datei zurück. Die Inhalte sind starr in ihrem Layout verankert und müssten bei Änderungswunsch auch in dieser bearbeitet werden. Automatisiert neue Inhalte zu laden war nicht möglich. Durch JavaScript begann der Vormarsch von dynamischen Webseiten – so wurden Newsticker, Blogs und Online-Shops überhaupt erst möglich. Beim Aufruf einer dynamischen Website, werden die Inhalte aus einer Datenbank geladen und die Seite wird mit eben diesen frisch gerendert. Es gibt eine vorgegebene Struktur bzw. ein Layout in welches die sich ändernden Inhalte immer neu eingepflegt werden.
Doch wie funktioniert das?
Just-in-time-Kompilierung (JIT-Kompilierung) 0 und 1 – damit können unsere Rechner arbeiten, mit dem Code der über 350 Programmiersprachen können sie wenig anfangen. Da es jedoch für Programmierer nicht so einfach ist, eine Anwendung oder Software in Nullen und Einsen zu schreiben, werden Programmiersprachen verwendet. Wird ein Programm in der einen Sprache geschrieben jedoch auf einem System mit einer anderen ausgeführt, muss diese, wie bei gesprochenen Sprachen auch, übersetzt werden. Dieser Vorgang wird Kompilierung genannt und kann in zwei Weisen erfolgen:
- Ahead Of Time Kompilierung (AOT) mittels Compiler
- Just In Time Kompilierung (JIT) mittels Interpreter
Bei der AOT-Kompilierung wird das Programm bereits vor dem Anwendungsfall komplett übersetzt und zum Auslesen bereit gestellt. Bei der JIT-Interpretation hingegen, wird der Code Im Moment des Bedarfs kompiliert. Gerade bei dynamischen Webseiten und Anwendungen ist das wichtig, da die ständig wechselnden Inhalte so berücksichtigt werden. JavaScript wird demnach in vielen Anwendungsfällen Just-in-time interpretiert.
Unterschied Java und JavaScript
Während JavaScript und Java zwar dieselbe Sprache zugrunde liegt – die Programmiersprache C – , unterscheidet sich jedoch ihre Syntax. Java ist eine Programmiersprache, JavaScript genau genommen eine Skriptsprache, so wird Java kompiliert und JavaScript interpretiert. Auch ihr Anwendungsbereich ist unterschiedlich. JavaScript findet allem voran hauptsächlich in Browsern und HTML-Dokumenten Anwendung, während Java für die Entwicklung von Anwendungen auf Endgeräten wie Laptops, Spielekonsolen und vielen mehr genutzt wird.
Früher nur für die clientseitige Browserdarstellung verwendet, entwickelte sich JavaScript jedoch weiter und findet mittlerweile in Verbindung mit Frameworks wie Node,js auch serverseitig Anwendung.
Was beide Programmiersprachen dennoch verbindet ist die Objektorientierte Programmierung (OOP). Die Anwendung des objektorientierten Programmierparadigma verhilft zur besseren Übersichtlichkeit bei umfangreichen Projekten.
Zusammenfassung
Für das Webdesign war die Einführung von JavaScript ein riesiger Schritt nach vorn. In Sachen Nutzerfreundlichkeit und Design eröffneten sich gänzlich neue Möglichkeiten. Interaktive Elemente waren nun kein Problem mehr – die Seiten wurden interessanter und das Nutzererlebnis ein komplett neues. Zunächst sollte die Skriptsprache eine Ergänzung zu Java darstellen, doch durch die vielfältigen Nutzungsmöglichkeiten und Weiterentwicklungen wurde JavaScript neben HTML und CSS zu einer der drei Säulen des modernen Webdesigns. Während es früher ausschließlich clientseitig in Webbrowser angewendet wurde, wurden die Nutzungsmöglichkeiten durch Frameworks wie Node.js auch auf die Server-Seite hin erweitert.
Quellen
https://www.get-in-it.de/magazin/bewerbung/it-skills/welche-programmiersprache-lernen
https://aws.amazon.com/de/what-is/javascript/
https://falconbyte.net/javascript-objektorientierung.php
https://it-talents.de/it-wissen/javascript/
https://homepages.thm.de/~hg54/mmk_2011/ecmascript/ecmascript-einfuehrung.htm