Scripts (Skripte)
Kurz: Kurze, meist interpretierte (nicht kompilierte) Programme, die eine bestimmte Aufgabe automatisieren — z. B. ein Build-Skript, ein Deployment-Skript oder ein einmaliges Datenmigrations-Skript.
Genauer: Skriptsprachen (Bash, Python, JavaScript via Node.js) werden typischerweise nicht wie C/Java vorab kompiliert, sondern direkt zur Laufzeit interpretiert — praktisch für kleinere, häufig geänderte Automatisierungsaufgaben statt für vollständige, performancekritische Anwendungen.
Im Detail
Interpretiert statt kompiliert
#!/bin/bash
for datei in *.txt; do
echo "Verarbeite $datei"
mv "$datei" "archiv/$datei"
doneSkriptsprachen (Bash, Python, JavaScript via Node.js) werden typischerweise nicht wie C/Java vorab in Maschinencode kompiliert, sondern direkt zur Laufzeit von einem Interpreter gelesen und ausgeführt. Der Reiz liegt in der niedrigen Einstiegshürde: keine separate Kompilierung nötig, sofort ausführbar (./skript.sh oder python skript.py), gut geeignet, um wiederkehrende manuelle Aufgaben zu automatisieren.
Typische Einsatzfelder
- Build-Skripte: orchestrieren den eigentlichen Kompilier-/Build-Prozess einer größeren Anwendung (mehrere Schritte: Abhängigkeiten installieren, kompilieren, testen, verpacken).
- Deployment-Skripte: bringen eine fertige Anwendung automatisiert auf einen Server, oft als Teil einer CI/CD-Pipeline.
- Wartungs-/Migrationsskripte: einmalige oder seltene Aufgaben wie eine Datenbank-Schemaänderung oder eine große Dateiumbenennung.
- Cron-Jobs: regelmäßig automatisch ausgeführte Skripte (z. B. nächtliche Backups, tägliche Report-Generierung).
Grenze zur “richtigen Anwendung”
Die Grenze zwischen “Skript” und “richtiger Anwendung” ist fließend und eher eine Frage der Konvention als eine technische Grenze — ein 20-Zeilen-Python-Skript zum Umbenennen von Dateien und eine 50.000-Zeilen-Python-Webanwendung nutzen dieselbe Sprache und denselben Interpreter, unterscheiden sich aber deutlich in Umfang, Struktur, Fehlerbehandlung und Wartungsanspruch. Faustregel: sobald ein Skript Fehlerbehandlung, automatisierte Tests, externe Konfiguration und mehrere zusammenhängende Module braucht, wird es meist eher als “Anwendung” bezeichnet als als “Skript”.
Vor- und Nachteile gegenüber kompilierten Sprachen
Skripte sind meist langsamer zur Laufzeit als kompilierter Code (jede Zeile wird beim Ausführen interpretiert statt vorab in effizienten Maschinencode übersetzt), dafür deutlich schneller zu schreiben und zu ändern — kein separater Kompilierschritt zwischen Codeänderung und Testlauf. Für die meisten Automatisierungsaufgaben (die nicht in einer engen Zeitschleife millionenfach laufen) überwiegt der Geschwindigkeitsvorteil bei der Entwicklung den Performance-Nachteil zur Laufzeit deutlich.
Siehe auch: Bash, PowerShell, Shell