Skriptsprache

In diesem Blog berichte ich über Skriptsprachen. Ich habe momentan ein TBZ Modul, in der es darum geht, Abläufe mit einer Skriptsprache zu automatisieren. Da gab es verschiedene Skriptsprachen, die wir verwenden konnten, wie z.B. Python,  PHP oder Powershell. 

Was sind Skriptsprachen

Bei der Erstellung von Online Anwendungen oder einfach nur bei zusätzlicher Dynamik in einer Website benötigt man Skriptsprachen. 

Eine Skriptsprache ist eine Reihe von Befehlen, die ohne Kompilierung ausgeführt werden können. Während alle Skriptsprachen Programmiersprachen sind, sind nicht alle Programmiersprachen Skriptsprachen. Als bekannte Beispiele für Skriptsprachen gäbe es PHP, JavaScript und Python. Wie gesagt ist eine Skriptsprache eine Programmiersprache, die aber Aufgaben innerhalb der Laufzeitumgebung durch einen Interpreter anstelle eines Compilers ausführt. Sie sind in der Regel kurz, schnell und werden aus Quellcode oder Bytecode interpretiert. Andere Programmiersprachen hingegen benötigen unter Umständen einen Compiler, der die Befehle in Maschinencode übersetzt, bevor diese ausgeführt werden können. 

Unterschied Skriptsprache und Programmiersprache

Um Skriptsprachen zu verstehen, hilft es zu wissen, was sie von andere Programmiersprachen wie C#, C++ und Java unterscheidet. In diesen Sprachen schreibt man einen Quelltext, welcher in Binärcode umgewandelt wird. Es gibt also zwei Dateien: die Quelltextdatei und die daraus erstellte Binärdatei, die sich direkt auf dem Computer ausführen lässt. Als Übersetzer zwischen den beiden Dateien dient der Compiler. Während der Kompilierung wird der Quelltext überprüft, ob sie richtig geschrieben worden ist: Sind alle verwendete Variablen tatsächlich definiert, passen die Typen von Funktionsargumente zu den Funktionsdefinitionen, hat man irgendwo ein Zeichen vergessen etc. Diese Überprüfung findet bei jeder Kompilierung für den gesamten Quelltext statt und kann so einige Zeit in Anspruch nehmen. Der Binärcode ist auch stark optimiert, um bei der Ausführung möglichst fehlerfrei und schnell zu arbeiten. Kompilierte Sprachen eignen sich daher besonders für rechenintensive Aufgaben und größere Systeme. 

Bei Skriptsprachen gibt es keine Kompilierung. Stattdessen werden sie interpretiert. Das bedeutet, dass Skriptsprachen einen Interpreter verwenden, um ihren Code in nativen Maschinencode umzuwandeln. Es wird also keine Binärdatei aus dem Quelltext erstellt, sonder der Interpreter liest und analysiert das Code jedes Mal. Das hat die Folge, dass in Skriptsprache geschriebene Programme gewöhnlich weniger effizient sind, weil mit Compilersprachen das Code nur einmal analysiert werden muss, während ein Interpreter sie jedes Mal analysieren muss. 

Serverseitige und Clientseitige Skriptsprachen

Es gibt zwei Haupttypen: serverseitige und clientseitige Skriptsprachen. Sie unterscheiden sich darin, von wo aus der Code ausgeführt wird, was sich nicht nur auf die tatsächlich gewählten Sprachen, sondern auch auf die Leistung und ihre Fähigkeit auswirkt.

Serverseitige Skriptsprache

Serverseitige Skriptsprachen sind solche, die auf einem Webserver ausgeführt werden. Da sie von der Backend-Seite ausgeführt wird, ist das Skript für den Besucher nicht sichtbar. Aus diesem Grund ist es ein sicherer Ansatz Sie werden häufig verwendet, um dynamische Websites und Plattformen zu erstellen, Benutzeranfragen zu bearbeiten, Daten zu generieren und bereitstellen etc. Ein bekanntes Beispiel für serverseitiges Scripting ist die Verwendung von PHP in WordPress. 

Beispiele: PHP, Pytho, Node.js, Perl und Ruby

Clientseitige Skriptsprache

Im Gegensatz zu Serverseitige Skriptsprachen werden Clientseitige Skriptsprachen vom Browser des Benutzers ausgeführt. Sie wird in der Regel am Frontend ausgeführt, was sie für die Benutzer sichtbar macht. Oft wird es verwendet, um Benutzeroberflächen und leichtere Funktionen wie diese zu erstellen. Da es lokal ausgeführt wird, bietet es in der Regel eine bessere Leistung und belastet daher den Server nicht.

Beispiele: HTML, CSS, JQuery und JavaScript