Extras din notiță
1. Skripts: Einfuerung
Motivation für Skriptsprachen
Häufig wiederkehrende Aufgaben
Ursprünglich orchestrieren anderer Programme
In ähnlicher Art und Weise
In derselben Umgebung/Domäne
Abstraktionen dieser Aufgaben in Skriptsprachen
Höherwertige Sprachmittel
(Für alle Elemente, ...)
Mächtige Datenstrukturen als Teil der Sprache
Umfangreiche integrierte Bibliotheken
Ziele
Schnelle (auch prototypische) Implementierung
Kompakter ausdrucksstarker Code
Fehlerfreiheit
Wartbarkeit
Eigenschaften von Skriptsprachen
Features
Automatische Speicherverwaltung
Optional: Objektorientierung, Typsystem, Modulkonzepte, ...
Mächtige Datenstrukturen für ausdrucksstarken Code
String, Zeichenketten-Verarbeitung
Listen (Keller, Queue, ...), dynamisch
Tupel
Wörterbücher, assoziative Arrays
Bibliotheken und domänenspezifische Features
Allgemein (Reguläre Ausdrücke, ...)
Reporting (String-Manipulation und Datensatz-Manipulation)
Benutzeroberflächen (Graphische Elemente und Interaktivität)
Web-Anwendungen (HTML-Integration, HTTP, Sessions, ...)
2. Skriptsprachen gegenueber anderen Programmiersprachen
_Skriptsprachen
gegenüber anderen Programmiersprachen
Effiziente Ausnutzung der
Ressourcen (C, C++, [Java])
Schnelle Entwicklung (Python),
Prototypen (Shell-Skript),
kleine Systeme (Perl)
Stärke
Oft streng typisiert
(C, C++, Java)
Schwaches, flexibles Typ-Konzept
(Python, Perl, awk)
Typisierung
Meist in Maschinencode
kompiliert (C, C++, Java)
Meist interpretiert oder Byte-Code
(Python, Perl, awk)
Ausführung
Oft allgemein (C, C++, Java) Oft speziell (GUI mit TCL/TK und
JavaScript, Reporting awk und Perl)
Einsatzbereich
Neuentwicklung von Anfang an
(C)
Kombination bestehender Bausteine
(Shell-Skript)
Einsatzziel
(System-)
Programmiersprachen
Skriptsprachen
3.Reguläre Ausdrücke _
Reguläre Ausdrücke/Regular Expression (RE)
_
_
Flexibles Matchen durch RE, das Pattern mit Sonderzeichen
_Erweiterte und Basic reguläre Ausdrücke_
Reguläre Ausdrücke in Skriptsprachen
_Spezielle Bibliotheken (Python, PHP)
oder Teil der Sprache (Perl, AWK)
_Kompilation des Patterns, Ausführen auf C-basierter Engine
_Einsatz
_Stringverarbeitung
_Testen auf syntaktische Korrektheit
(Email-Adresse, Telefonnummer, ...)
_Flexible Extraktion von Zeichenketten
_Flexibles Suchen und Ersetzen
Nutzen von regulären Ausdrücken in AWK
Beispiel-Anwendung: Web-Logdatei-Analyse
Match von Aufrufen
der Form
/~userid/...
Extraktion
Benutzerkennung
Felder (Dictionary) zum
Zählen der Häufigkeit
Preview document
Conținut arhivă zip
- Skripts.doc