XP Days Germany

zur andrena objects ag

DSL am Beispiel Groovy - Kommunikation zwischen Entwickler und Kunde? (Bernd Schiffer, akquinet agile GmbH)

Eine Domain Specific Language (DSL) ist eine Sprache, mit der sich Umstände innerhalb eine Fachgebiets ausdrucksstärker darstellen lassen als in allgemeinen Programmiersprachen. Hierfür war es bislang meist notwendig, Parser zu schreiben oder ähnlich aufwändig zu verfahren. Eine DSL eignet sich hervorragend zur Kommunikation zwischen Entwickler und Kunden. Mit dynamischen Programmiersprachen können DSLs deutlich einfacher entwickelt werden.

Groovy ist eine dynamische Programmiersprache. Dynamische unterscheiden sich von statischen Programmiersprachen u.a. dadurch, dass sie Empfänger von Methodenaufrufen zur Laufzeit ermitteln, nicht bereits während des Kompilierens. Dieses Feature ist die Basis der Metaobjektprogrammierung (MOP). Groovy bietet hervorragende MOP-Eigenschaften, und gerade durch Groovys immens gutem Zusammenspiel mit der Javaplattform ist es für viele Javaentwickler eine gute Wahl, die Vorteile bei der DSL-Entwicklung mit Groovy zu nutzen.

Über den Referenten

Bernd Schiffer Dipl.-Inf. Bernd Schiffer ist Softwareentwickler bei der akquinet agile GmbH Hamburg. Er hat mehrjährige Erfahrung aus agilen Softwareprojekten (vor allem: eXtreme Programming, XP) als Entwickler und XP-Coach, sowie als Sprecher auf Konferenzen. Darüber hinaus interessiert er sich für TDD, Groovy, Grails, DSLs und guten Code. Er studierte Informatik an der Universität Bremen. Momentan arbeitet er am Buch "Grails" zusammen mit Stefan Roock, welches bei Addison-Wesley erscheinen wird.