Aus Linux-Magazin 01/2006

Mit Skriptsprachen programmieren

Viele Aufgaben erledigen Programmierer heute mit Skriptsprachen, die sich von schnellen Hacks zu ausgefeilten Tools mit fortgeschrittenen Konzepten entwickelt haben. Unser Schwerpunkt entdeckt Schätze aus einer faszinierenden Welt.

Inhalt

36 | Google-Maps Mit Javascript und HTML das Google-Angebot an Satellitenbildern und Karten nutzen.

44 | DSLs in Ruby Domain Specific Languages lassen sich in Ruby syntaktisch einfach gestalten.

48 | Twisted Das Python-Framework deckt alle Bereiche der Netzwerkprogrammierung ab.

52 | Realbasic Visual-Basic-Programme direkt übernehmen oder portieren: Realbasic hilft bei der Migration.

56 | Bash-Tricks Das Schweizer Messer der Unix-Programmierung – immer dabei und für die meisten Anwendungen brauchbar.

Noch mehr Skriptsprachen im Perl-Snapshot und im Tcl-Federlesen ab Seite 100.

Die Grenzen zwischen den Welten verschwimmen immer mehr. Wo sich früher kompilierte und interpretierte Sprachen getrennt gegenüberstanden, ist heute gar nicht mehr klar, was eine Skriptsprache überhaupt ist. Dass ein Interpreter das Skript beim Aufruf ausführt, kann kaum als charakteristisches Merkmal gelten, denn auch komplexe Hochsprachen wie C# oder Java werden zur Laufzeit von Quell- in Bytecode übersetzt und abgearbeitet.

Andererseits implementieren Skriptsprachen ausgefeilte Konzepte des Software Engineering, von der objekt- und aspektorientierten bis zur extrem agilen Programmierung. In ihrer Vielfalt an Zusatzmodulen macht ihnen ohnehin kaum eine “ernsthafte” Sprache etwas vor, bestes Beispiel ist Perl mit ihrem unerschöpflichen CPAN-Repository.

Am klarsten dürfte der Fall noch bei der Shellprogrammierung liegen, die vielen Skripten zugrunde liegt. Doch die Bash hat ihr Unix-Vorbild Bourne Shell lange überholt: Sie beherrscht mehrdimensionale Variablen und andere praktische Programmierkonzepte. Die häufigen Aufrufe externer Tools in Bash-Skripten entsprechen zwar der Unix-Philosophie, kosten aber Performance. Der Linux-Magazin-Redakteur und ausgewiesene Bash-Experte Mirko Dölle zeigt ab Seite 56, wie der anspruchsvolle Shellprogrammierer seine Skripte beschleunigt.

Bewährtes und Neues

Netzwerkprogrammierung mit C ist bekanntlich nicht sehr intuitiv. Einige Aufrufe der einschlägigen Funktionen des Socketinterface sind erforderlich, bis die ersten IP-Pakete über die Leitung fließen. Einfacher geht’s in den meisten Skriptsprachen schon von Haus aus, das Python-Framework Twisted bietet noch höheren Komfort: Wenige Zeilen genügen für einen funktionsfähigen Webserver. Keiner der Sorte “Hello World”, sondern einer, der auch das CGI-Interface oder Perl-Skripte unterstützt. Zudem beherrscht Twisted auch andere wichtige Internetprotokolle von DNS bis IMAP. Eine Übersicht gibt der Artikel auf Seite 48.

Am anderen Ende der Webverbindung steht der Client und damit auch eine mittlerweile gut eingeführte Skriptsprache: Javascript. Die Kompatibilitätsprobleme der ersten Jahre sind überwunden und komplexe Webanwendungen heute Standard. Suchmaschinenbetreiber Google hat in letzter Zeit dazu einige Dienste angeboten, die auf großes Interesse stießen, zum Beispiel Gmail oder Google Earth. Wie Javascript Karten und Satellitenbilder von Google Maps in eigene Webseiten einbindet, verrät der Workshop auf Seite 36.

Ist selbst eine Skriptsprache für den speziellen Anwendungszweck noch zu allgemein, bietet es sich an, eine Minisprache bereitzustellen, wie es zum Beispiel Parsergeneratoren oder Sendmail mit M4 tun. Ruby lässt den Programmierer eine solche Domain Specific Language (DSL) mit Ruby-eigenem Inventar schreiben. Die DSL wird dadurch einfach, bleibt aber weiterhin vom Ruby-Interpreter zu verarbeiten (Seite 44).

Viele Migranten von Windows zu Linux kämpfen mit dem Problem der Visual-Basic-Altlasten. Immer noch gibt es kein Framework, das völlig zur Microsoft-Technologie kompatibel ist. Die Firma Real Software hat nun einen Linux-Port ihrer vom Mac stammenden Basic-Umgebung vorgelegt, die zu großen Teilen mit Visual Basic kompatibel ist. Der Test ab Seite 52 wirft einen Blick auf Realbasic und prüft dabei die Kompatibilität zu Visual Basic.

Copyright © 2002 Linux New Media AG

LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben