kramann.info
© Guido Kramann

Login: Passwort:










COACH2
1 Planung
2 Architektur
3 Anzeige
4 EEPROM
5 I2C
..5.1 MasterSendByte
..5.2 MasterSend2Bytes
..5.3 MasterReceiveByte
..5.4 MasterReceive2Bytes
6 UART
7 DFT
8 FFT
9 Planung2
10 Klassen
..10.1 AnzeigeTaster
..10.2 RS232
..10.3 MotorServo
..10.4 Drehgeber
..10.5 Sensor
..10.6 Funk
11 Adaption
..11.1 Programmiertechnik
..11.2 Evoopt
12 Fuzzy
..12.1 Uebungsaufgabe
..12.2 Fuzzygroesse
..12.3 Fuzzyset
..12.4 Lookuptable
13 Skript
..13.1 Funkkorrektur
..13.2 Skriptsprachen
..13.3 Anforderungen
..13.4 Agentensysteme
..13.5 Implementierung
..13.6 Experimente
14 Gesamtkonzept
..14.1 Skripterweiterung
..14.2 Makroverhalten
67 Echtzeitsysteme
..67.1 Einfuehrung
....67.1.1 Echtzeit
....67.1.2 Korrektheit
....67.1.3 Hardware
....67.1.4 Ziele
....67.1.5 Synchronprogramm
..67.2 Threads
....67.2.1 Java
....67.2.2 Synchronisierung
..67.3 COACH
....67.3.1 Kaskadenregler
....67.3.2 Zeitebene1
....67.3.3 Zeitebene2
....67.3.4 Zeitebene3
....67.3.5 Puck
....67.3.6 Puckschwarm
..67.4 RTAIlab
....67.4.1 Slax
....67.4.1 USB_Stick
....67.4.2 Sinus
..67.5 Semaphor
....67.5.1 Laufkatze
....67.5.2 Java
....67.5.3 Semaphor
..67.6 Audio
....67.6.1 wav
....67.6.2 Linux
..67.7 Lookup
....67.7.1 Fuzzy
....67.7.2 PWM
..67.8 NeuronaleNetze
....67.8.1 Neuron
....67.8.2 Backpropagation
....67.8.3 Umsetzung
....67.8.4 Winkelerkennung
..67.9 Internetprogrammierung
....67.9.1 Codegenerierung
....67.9.2 PHP_Programmierung
....67.9.3 PHP_OOP
....67.9.4 Java
....67.9.5 UDP
..67.10 DFT
..67.11 FFT
..67.12 Zustandsmaschine
..67.13 Fuzzy
....67.13.1 Fuzzylogik
....67.13.2 FuzzyRegler
....67.13.3 Uebung9
....67.13.5 Softwareentwicklung
......67.13.5.1 AgileSoftwareentwicklung
......67.13.5.2 FuzzyRegler
......67.13.5.3 Uebung
....67.13.6 Umsetzung
......67.13.6.1 FuzzyRegler
......67.13.6.2 Simulation
......67.13.6.3 Optimierung
......67.13.6.4 Uebung
....67.13.7 Haengependel
......67.13.7.1 Haengependel
......67.13.7.2 Simulation
......67.13.7.3 FuzzyRegler
......67.13.7.4 Optimierer
......67.13.7.5 Genetisch
....67.13.8 Information
....67.13.9 Energie

13.2 Skriptsprachen und ihre Bedeutung in der Programmiertechnik

Was ist eine Skriptsprache?

  • Bei Compilersprachen wird der Quellcode in Maschinensprache umgewandelt und die entstandene ausführbare Datei ist dann direkt auf einem Computer oder Mikrocontroller lauffähig.
  • Dagegen wird bei einer Skriptsprache der Quellcode, also das Programm im lesbaren Klartext, zur Laufzeit des Programm durch einen Interpeter Zeile für Zeile eingelesen und unmittelbar darauf ausgeführt.
Unterschied zwischen Compiler- und Skriptsprache

Bild 13.2-1: Unterschied zwischen Compiler- und Skriptsprache

Wo werden Skriptsprachen eingesetzt?

  • Im Internet, Client-seitig:
  • Skriptsprachen werden eingesetzt, wo für ein hohes Maß an Flexibilität ein Performance-Verlust verschmerzbar ist.
  • Das gleiche Skript kann auf unterschiedlichen Plattformen von passenden Interpretern ausgeführt werden.
  • Internet-Browser besitzen z.B. in der Regel einen Java-Skript-Interpreter, der Javasckript befehle verarbeitet.
  • Dabei ist es prinzipiell unerheblich, ob es sich um einen Internet-Explorer, einen Mozilla-Firefox oder einem anderen Browser handelt und auch, ob diese unter Linux, Windows oder einem anderen Betriebssystem laufen.
  • Im Internet, Server-seitig:
  • Bei der Erstellung so genannter dynamischer Internetseiten, z.B. mit PHP oder Perl, wird durch aufruf einer URL beim Server die Abarbeitung eines Skriptes angestoßen, welches erst bei der eintreffenden Anfrage eine Internetseite erzeugt.
  • Dies hat den Vorteil, dass die Seite den besonderen Bedürfnissen des Clients automatisch angepaßt werden können (eingeloggt/ nicht eingeloggt, bekannter User / unbekannter User, etc.).
  • An dieser Art Skripte müssen häufig Änderungen vorgenommen werden. Außerdem enthalten sie auch teilweise Textbausteine, die die Grundlage der ausgelieferten Seite bilden.
  • Würden hier zu kompilierende Programme verwendet werden, wären Änderungen sehr viel mühsamer auszuführen und die Transparenz der Gesamtstruktur würde darunter leiden.
  • Berechnungssoftware:
  • Simulationsmodelle sind der Part einer Simulationssoftware, der sich am schnellsten ändert.
  • Scilab, Matlab u.ä. Programme bieten die Möglichkeit schnell laufende kompilierte Komponenenten, wie Integratoren, Optimierer etc. über ein Skripte mit zu simulierenden Modellbeschreibungen zu verknüpfen.
  • Solange man die gut unterstützte Fähigkeit, auf Vektoren und Matrizen zu operieren ausnutzt, werden diese Skripte sehr schnell abgearbeitet. Ist es nicht zu vermeiden, Schleifen u.ä. Kontrollstrukturen in Skriptteilen zu verwenden, sinkt die Performance schnell ab.
  • Für ähnliche Zwecke lassen sich als eigene Klasse mit entsprechenden Methoden diverse Skriptinterpreter in Java (z.B. RHINO), C/C++ (z.B. CH) einbetten.
  • Weitere Skriptsprachen und deren Einsatzgebiet:
  • VRML - Virtual Reality Modelling Language - Beschreibung von 3D-Objekten, Interaktion und Animationen.
  • LUA - Häufig für Spieleentwicklung eingesetzte Skriptsprache eingebettet in C++
  • Postscript - Darstellungsformat für zu druckende Dateien im Vektorformat, enthält genügend Elemente, wie Variablen, Kontrollstrukturen und Funktionen, die es zu einer Programmiersprache macht.