www.wikidata.de-de.nina.az
Skriptsprachen auch Scriptsprachen sind Programmiersprachen die uber einen Interpreter ausgefuhrt werden Sie verzichten manchmal auf Sprachelemente deren Nutzen erst bei der Bearbeitung komplexerer Aufgaben zum Tragen kommt So wird etwa in Skriptsprachen auf den Deklarationszwang von Variablen meist verzichtet vorteilhaft zur schnellen Erstellung von kleinen Programmen siehe auch Prototyping bei grossen hingegen von Nachteil etwa wegen der fehlenden Uberprufungsmoglichkeit von Tippfehlern in Variablennamen Programme die in Skriptsprachen geschrieben sind werden auch Skripte oder Scripts genannt wahrend in der Betriebssystemumgebung von Microsoft meistens die Bezeichnung Makro verwendet wird Skripte werden fast ausschliesslich in Form von Quelltextdateien ausgeliefert um so ein einfaches Bearbeiten und Anpassen des Programms zu ermoglichen Inhaltsverzeichnis 1 Merkmale 2 Abgrenzung 3 Kategorien 3 1 Kommandozeileninterpreter 3 1 1 Beispiele 3 2 Skriptsprachen die als Bibliothek verfugbar sind 3 2 1 Beispiele 3 3 Skriptsprachen verschiedener Programme 3 3 1 Beispiele 3 4 Skriptsprachen im WWW 3 4 1 Beispiele serverseitig 3 4 2 Beispiele clientseitig 3 5 Selbstandige Skriptsprachen 3 5 1 Beispiele spezialisierte Sprachen 3 5 2 Beispiele allgemein verwendbare Sprachen 4 Vergleich verschiedener Skriptsprachen 4 1 Vergleich syntaktischer Moglichkeiten in Skriptsprachen 5 Weblinks 6 EinzelnachweiseMerkmale BearbeitenHaufig vorhandene Merkmale sind implizit deklarierte Variablen dazu gehoren auch dynamische Funktionsnamen dynamische Typisierung automatische Speicherverwaltung vor allem automatische Speicherbereinigung dynamische Klassenzugehorigkeit oder prototypenbasierte Vererbung unmittelbare Ausfuhrung durch Interpretation des Quelltextes ohne getrennte Ubersetzungsphase Bei einigen Skriptsprachen kann der Programmcode ebenso wie andere Daten durch das Programm selbst manipuliert werden das macht jene Sprachen besonders flexibel Die Anwendungsgebiete und Eigenschaften konventioneller Programmiersprachen und Skriptsprachen uberschneiden sich mittlerweile stark siehe hierzu den Abschnitt Abgrenzung weshalb eine strikte Trennung zwischen konventionellen Programmiersprachen und Skriptsprachen nur selten moglich ist Abgrenzung BearbeitenAus architektonischer Sicht werden Skriptsprachen haufig verwendet um bestehende Komponenten in einem Anwendungsprogramm zu verbinden bzw aufzurufen Die Komponenten selbst werden in einer komplexeren Programmiersprache entwickelt Beispiel dafur ist ein Shellskript das externe Programme aufruft Diese Programme sind im Allgemeinen in verschiedenen Programmiersprachen entwickelt Ein anderes Beispiel ist die Sprache BPEL die verwendet wird um Webservices zu beschreiben die in verschiedenen Programmiersprachen entwickelt werden konnen Wurden Skriptsprachen anfangs nur fur kleinere Automatisierungen verwendet so werden sie heute auch in Bereichen eingesetzt die fruher den klassischen Programmiersprachen vorbehalten waren Durch Verbesserungen in den Interpretern wurde der Geschwindigkeitsunterschied zu statischen Sprachen verringert zusammen mit dem Fortschritt der Rechenleistung ergibt sich vielfach eine akzeptable Ausfuhrungsgeschwindigkeit die fruher nur mit kompilierten Programmen zu erreichen war Daruber hinaus konnen in einigen der selbstandigen Programmiersprachen Variablen zur besseren Fehleruberprufung optional deklariert werden Mit modernen Skriptsprachen konnen daher manche Anwendungen etwa zur Auswertung von Daten vollstandig unter Verzicht auf externe Programme implementiert werden Kategorien BearbeitenKommandozeileninterpreter Bearbeiten Manche Skriptsprachen sind von den Kommandozeileninterpretern der Betriebssysteme abgeleitet Die Interpreter sind vorrangig fur interaktive Benutzung d h fur die Eingabe von Kommandos ausgelegt Die Eingabesprache wird um Variablen arithmetische Ausdrucke Kontrollstrukturen if while und anderes erweitert und ermoglicht so die Automatisierung von Aufgaben z B bei der unbeaufsichtigten Installation indem kleine Programme in Dateien geschrieben werden Diese Dateien konnen dann vom Interpreter ausgefuhrt werden Die Dateien nennt man unter dem Betriebssystem Unix Shellskripte ausgefuhrt von einer der Unix Shells sh csh oder unter DOS und Windows auch Stapelverarbeitungsdateien oder Batch Skripte ausgefuhrt von COMMAND COM und cmd exe Abzugrenzen sind Kommandozeileninterpreter von interaktiven Sprachen wie z B Lisp Python Tcl oder Perl im Debugger die zum Testen und Debuggen interaktive Programmabschnitte ausfuhren konnen aber nicht so eng im Betriebssystem integriert sind Beispiele Bearbeiten Bourne Shell sh Unix Bourne Shell die klassische Unix Shell bash GNU Ersatz und Erweiterung der sh Shell Kornshell ksh Weiterentwicklung der klassischen sh Shell C Shell csh BSD Shell Unix Versionen aus Berkeley cmd exe Kommandointerpreter von Windows ab Windows NT PowerShell Kommandointerpreter u a fur Windows TACL Kommandointerpreter von Tandem Systemen Digital Command Language kurz DCL Kommandosprache fur VMS PlattformenSkriptsprachen die als Bibliothek verfugbar sind Bearbeiten Beispiele Bearbeiten GNU Guile GNU Extension Language Lua Skriptsprache zum Einbinden in Programme oft in Computerspielen zu finden AngelScript Skriptsprache zum Einbinden in Programme oft in Computerspielen zu finden S Lang plattformunabhangige Skriptsprache zum Einbinden in Programme Sleep In Java geschriebene Skriptsprache zum Einbinden in Java Programme Squirrel durch Lua inspirierte Skriptsprache mit C ahnlicher Syntax Tcl Tool Command Language von J Ousterhout VBScript und JScript Standardskriptsprachen von Windows Windows PowerShell Microsofts Skriptsprache zum Einbinden in NET ProgrammeSkriptsprachen verschiedener Programme Bearbeiten Hauptartikel Makro Skriptsprachen konnen auch in Anwendungsprogrammen zur Automatisierung von Aufgaben oder durch Erweiterung der Fahigkeiten des Programms dienen Teilweise wird auch ein Teil der Funktionalitat des Programms selbst in dieser Skriptsprache realisiert Somit konnen Anwender die Funktionalitat eines solchen Programms schnell mit neuen Funktionen erweitern oder bestehende abandern ohne das Programm selbst umzuschreiben Diese Erweiterungen konnen selbst so weitreichend sein dass das Programm vollig neue Aufgaben erledigt die mit dem vorherigen Programm aus Anwendersicht nichts mehr gemeinsam haben So wurden aus dem Texteditor Emacs auch ein E Mail Programm Wanderlust 1 oder ein Webbrowser Emacs W3 2 Im Gegensatz zu Plug ins sind Skripte bzw Makros wesentlich flexibler und werden vor allem fur kleine Automatisierungen angewendet Beispiele Bearbeiten AppleScript Skriptsprache von macOS und Mac OS Classic AutoHotkey eine Skriptsprache fur Windows und Windows Programme kompilierbar AutoIt eine Alternative zum Windows Script Host Emacs Lisp Skriptsprache des Emacs Editors Google Apps Script zur programmierten Automatisierung von Google Workspace Anwendungen LPC C ahnliche Sprache fur MUDs Python verschiedene vor allem Open Source Programme z B LibreOffice Blender und GIMP lassen sich damit skripten OpenOffice Basic bei OpenOffice enthaltene Basic Makrosprache ahnlich VBA bei MS Office QuakeC Skriptsprache des Computerspiels Quake REXX insbesondere unter z VM und OS 2 als Makrosprache eingesetzt z B im Erweiterten Editor EPM Tcl im AOLserver eingesetzte Makrosprache UnrealScript Skriptsprache der Unreal Engine Vim Skriptsprache VBA Visual Basic for Applications Skriptsprache fur Microsoft Produkte ist auch kompilierbar VBScript Standardskriptsprache von Windows ab Windows 98 JScript Standardskriptsprache von Windows ab Internet Explorer 3 0 Windows 3 1 NT 3 5 Skriptsprachen im WWW Bearbeiten Fur das WWW werden Skriptsprachen haufig auf den Servern verwendet um dynamische Seiten oder ganze Webanwendungen zu erstellen Dies geschieht zum Beispiel bei den Wikis bei Foren Gastebuchern und bei Onlinegeschaften Des Weiteren werden clientseitige Skriptsprachen auch in den Webseiten selbst eingebunden und in den Browsern ausgefuhrt Beispiele serverseitig Bearbeiten Perl erste Skriptsprache die weite Verbreitung in Webservern fand PHP die verbreitetste Skriptsprache auf Webservern wurde direkt fur diese Aufgabe konzipiert Python kann mit einem Webserver verbunden oder mit einem eigenstandigen Webserver genutzt werden Ruby wird entweder uber CGI oder mit mod ruby ausgefuhrt zunehmend auch unter Benutzung von Ruby on Rails JavaScript kann z B mit Node js auch serverseitig genutzt werden VBScript in ASPBeispiele clientseitig Bearbeiten JavaScript standardisiert als ECMAScript wird von allen modernen Browsern unterstutzt CoffeeScript wird nach JavaScript transkompiliert TypeScript wird nach JavaScript transkompiliertSiehe auch Dynamisches HTML Selbstandige Skriptsprachen Bearbeiten Skriptsprachen konnen auch von anderen Programmen getrennt von ihrem Interpreter ausgefuhrt werden Einige dieser sind fur Spezialaufgaben konzipiert andere sind allgemein verwendbare Sprachen Diese Sprachen haben die fur umfangreiche Programmprojekte notwendigen Konzepte wie Namensraume und Kapselung und werden deshalb nicht selten fur grossere Anwendungen verwendet Beispiele spezialisierte Sprachen Bearbeiten awk Textprozessor Listengenerator unter Unix GLE Graphics Layout Engine Skriptsprache zur Erzeugung von Grafiken und SchaubildernBeispiele allgemein verwendbare Sprachen Bearbeiten Perl Programmiersprache mit erweiterten Textprozessorfahigkeiten PHP ursprunglich fur die Entwicklung von Webanwendungen entworfen Python teilweise objektorientierte Programmiersprache REBOL Programmiersprache von Carl Sassenrath REXX Skriptsprache von IBM Ruby objektorientierte Programmiersprache Tcl universelle Skriptsprache mit erweiterten Textprozessorfahigkeiten und grafischem Toolkit TkVergleich verschiedener Skriptsprachen BearbeitenSprache Paradigmen Erscheinungsjahr Entwickler Typisierung Wichtige Implementierungen LizenzGroovy objektorientiert deklarativ imperativ 2003 The Groovy Project Apache Software Foundation stark statisch dynamisch Apache Lizenz 2 Open Source JavaScript objektorientiert funktional imperativ 1995 Brendan Eich schwach dynamisch SpiderMonkey Rhino SquirrelFish V8 Nashorn Python objektorientiert funktional imperativ 1991 Python Software Foundation Guido van Rossum stark dynamisch CPython Jython IronPython PyPy Python Software Foundation Lizenz 3 Scala objektorientiert funktional imperativ 2003 Ecole polytechnique federale de Lausanne unter Leitung von Martin Odersky stark statisch Scala 4 BSD ahnlichPHP objektorientiert funktional imperativ 1995 The PHP Group schwach dynamisch Zend Engine HHVM Phalanger Compiler PHP Lizenz und andere teilweise proprietarRuby objektorientiert funktional imperativ 1995 Yukihiro Matsumoto stark dynamisch MRI CRuby YARV JRuby Rubinius weitere 2 clause BSD und eigene siehe Nutzungsbedingungen Tcl objektorientiert funktional imperativ 1988 John Ousterhout schwach dynamisch ActiveTcl Jim Tcl BSD LizenzVergleich syntaktischer Moglichkeiten in Skriptsprachen Bearbeiten Sprache Annotationen Anonyme Funktion Pattern Matching Benannte Parameter Optionale Parameter Currying Varargs 5 Groovy x x x x x xJavaScript x x x x xPython x x x x x xScala x x x x x x xPHP x x x x xRuby x x x x xTcl x x x x x xWeblinks Bearbeiten nbsp Wiktionary Skriptsprache Bedeutungserklarungen Wortherkunft Synonyme Ubersetzungen Overview of Scripting Languages SAP Help Portal Difference Between Programming Scripting and Markup LanguagesEinzelnachweise Bearbeiten http www gohome org wl 4 Emacs W3 In TLDP Abgerufen am 30 Mai 2019 amerikanisches Englisch Python License Lizenz Varargs Java Abgerufen von https de wikipedia org w index php title Skriptsprache amp oldid 237602660