O'Reilly logo

Groovy: Grundlagen und fortgeschrittene Techniken by Joachim Baumann

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

529
11 Was fehlt?
Leider gibt es immer noch viele Groovy-Klassen und viele Module, die
wir im Rahmen dieses Buchs nicht behandeln können (sonst würde es
doppelt so dick, und ich bekäme massiven Ärger mit dem Verlag). Die
jetzt folgende Auflistung enthält natürlich nicht alle weiteren Klassen
beziehungsweise Module, aber sie kann Ihnen Hinweise für andere
interessante Bereiche in Groovy bieten, die Sie auf eigene Faust erfor-
schen können.
11.1 Groovy-Klassen
Datumsrechnungen
Die TimeCategory bietet Ihnen die Möglichkeit, Datumsrechnungen
äußerst natürlich durchzuführen. Sie implementiert eine domänen-
spezifische Sprache (DSL) in Groovy und erlaubt auch Ausdrücke wie
2.weeks.ago oder 5.months.from.today. Diese Category finden Sie unter
org.codehaus.groovy.runtime.TimeCategory. Es könnte allerdings sein,
dass diese Funktionalität irgendwann in den Kern von Groovy aufge-
nommen wird.
Konfigurationsdateien
schreiben
Die Klasse groovy.util.ConfigSlurper erlaubt es, Konfigurations-
dateien in Form von Groovy-Skripten zu schreiben, die dann von
Con-
figSlurper analysiert und dem zu konfigurierenden Programm zur
Verfügung gestellt werden.
11.2 Module für Groovy
Windows-Programme
steuern
Scriptom ist ein MS-Windows-spezifisches Modul, das es uns erlaubt,
COM-Interaktionen mit Groovy zu programmieren. Dies ermöglicht
es, Windows-Programme wie Excel oder Word direkt aus Groovy her-
aus zu steuern. Falls Sie Interesse an diesem Thema haben, so können
Sie das Modul einfach von der Groovy-Website herunterladen.
11 Was fehlt?530
Open Office
Falls Sie mehr Interesse daran haben, OpenOffice zu steuern, so
gibt es auch hier eine Integration. Das Projekt wird bei SourceForge
unter dem URL http://sourceforge.net/projects/ifcx/ angeboten.
Externe Programme
ausführen
Es gibt ein Modul, das sich mit den Problemen der Ausführung
externer Programme beschäftigt. Da die Funktionalität von Groovy an
dieser Stelle ja nur die Java-eigene Funktionalität kapselt, erben wir
hier die Unzulänglichkeiten von Java. Das Modul
Process beziehungs-
weise
Groosh (der neue Name) implementiert die Funktion einer Unix-
Shell in Groovy. Damit müssen wir uns nicht mehr mit systemspezifi-
schen Fragen herumärgern. Das Modul können Sie auf der Groovy-
Website herunterladen.
Behaviour Driven
Development
Falls Sie sich für den Bereich des Behaviour Driven Development
BDD interessieren, dann ist das Modul
GSpec für Sie interessant, das es
uns erlaubt, Verhalten von Klassen in Form von Spezifikationen zu
definieren und in Folge zu verifizieren, dass diese Spezifikationen auch
tatsächlich eingehalten werden. Das Modul steht auf der Groovy-Web-
site zur Verfügung.
Maven2
Falls Ihnen Ant im Bereich des automatisierten Erzeugens von Pro-
grammen (Build-Management) nicht genug ist, könnte Sie das
Maven2-Plugin interessieren, das die Verwendung von Groovy in
Maven2 völlig natürlich macht. Weitere Information zum Plugin fin-
den Sie unter dem URL http://mojo.codehaus.org/groovy/.
Swing
Im April 2007 hat die Firma JIDE Software Inc. einen Teil der
Swing-Komponenten, die sie entwickelt, in Open Source umgewan-
delt. Der URL für das Open-Source-Projekt lautet https://jide-
oss.dev.java.net/. Diese Komponenten bieten vielfältige und interes-
sante Funktionalität, die unter Groovy durch den Erbauer JideBuilder
zur Verfügung gestellt werden. Die Website dieses Erbauers finden Sie
unter dem URL http://jidebuilder.sourceforge.net/.
Web Services
Falls Sie Web Services programmieren wollen, können Sie entwe-
der das Modul
GroovySoap oder GroovyWS verwenden (beide verfügbar
auf der Groovy-Website). GroovySoap ist das ältere Modul, das keine
Authentifizierung und keine Proxies erlaubt. GroovyWS basiert auf
Java 5 und versucht, die Mankos der älteren Implementierung auszu-
gleichen.
RPC
Das Modul XMLRPC implementiert einen RPC über HTTP. Die Para-
meter werden dabei in XML kodiert. Sowohl Server- als auch Client-
Unterstützung stehen zur Verfügung. Das Modul kann auf der
Groovy-Website heruntergeladen werden.
Java EE
Groovy bietet sogar Unterstützung für den Bereich Java EE.
Groovlets sind Servlets, die in Groovy geschrieben sind, und Groovy
Server Pages sind analog zu Java Server Pages in HTML und Groovy
53111.3 Zum Schluss
geschrieben. Es gibt die SimpleTemplateEngine, die die Erzeugung von
Vorlagen und das Ausfüllen derselben unterstützt. All dies ist bereits in
der normalen Groovy-Installation enthalten.
Grails
Zusätzlich muss aber noch Grails erwähnt werden, das auf
Groovy basierende Webframework, das wie Rails auf »Programming
by convention« beruht und erlaubt, extrem schnell funktionierende
Webanwendungen zu programmieren. Für Grails gibt es einige Bücher,
so umfangreich ist das Thema. Grails verfügt über eine eigene Website
unter http://www.grails.org/.
11.3 Zum Schluss
Es gibt mit Sicherheit noch viele Entwicklungen, interessante Projekte
und Module, die Ihnen neue Möglichkeiten mit Groovy bieten. Dies
zeigt, wie spannend die Sprache für alle ist, die sich mit ihr beschäf-
tigen.
Es gibt also noch viele interessante Dinge im Bereich Groovy, die
der Entdeckung harren, und ich wünsche Ihnen genauso viel Spaß, wie
ich ihn mit dieser faszinierenden Sprache habe.
Die Straße gleitet fort und fort,
Weg von der Tür, wo sie begann,
Weit über Land, von Ort zu Ort,
Ich folge ihr, so gut ich kann.
Ich lauf ihr raschen Fußes nach,
Bis sie sich groß und breit verflicht
Mit Weg und Wagnis tausendfach.
Und wohin dann? Ich weiß es nicht.
Der Herr der Ringe - J. R. R. Tolkien

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required