JAX07: Einsatz-Patterns für Script Sprachen in Java
Warum sollte man Sckriptsprachen einsetzen?
7 Patterns
Alleskleber(superglue)
Gut geeignet für flexible Applikationslayer: View und Controller
Beispiel:
XML Parser, Java Networking, Swing Widget -> RSS Reader
Weiches Herz
Fachliche Modelle auslagern
Rules Engines groovyrules
GroovyShell in Java einbinden: GroovyShell shell = new GroovyShell(Binding);
Endoskopische Operation
Minimal-invasiv
Im laufenden System Änderungen machen oder nachvollziehen.
Skripte ausführen in der VM, in dem das Produkt läuft
Wertvoll für Produkt-Support, Fehleranalyse, Hot-Fixes, Notfälle
Alles was man hätte programmieren können, kann man auslösen.
Emergency-Fix!
Groovy-Console
Bsp.: Live-Groovy Servlet (ULC Admin Console)
DBConnection Wrapper
def ds = Config.dataSource
ds.connection = new DebugConnection(ds.connection)
users = servletContext.getAttribute(‚users‘)
bad = users.findAll{ user -> gpath}
servletContext.setAttribute(‚users‘, users-bad)
Kluge Anpassung (Smart Configuration)
Ausführungslogik in Konfiguration
erstaz für xml-konfigurationen
Referenzen zwischen den verschiedenen XML Files (FrontIntegrator)
Typischer Anwendungsfall für DSLs, Groovy Builder, Grails plugins
Grenzenlose Offenheit
Jede Zeile Code wird änderbar
groovyblogs.org
Heinzelmännchen
Repetitive Aufgaben automatisieren
Automatisierter Build unbedingt notwendig für o4b!!
Verbindung Groovy und Ant
AntBuilder
ant.mail() (Mailtask)
Kommentar verfassen