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)

Advertisements



    Kommentar verfassen

    Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

    WordPress.com-Logo

    Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

    Twitter-Bild

    Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

    Facebook-Foto

    Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

    Google+ Foto

    Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

    Verbinde mit %s



%d Bloggern gefällt das: