Sonstiges

Effektive Scala Entwurfsmuster

Entwurfsmuster
Funktionale Programmierung
Scala

Abstract


Thu 9:50 - 10:35 Uhr | 2011

In vielen Präsentationen von Scala wird seine große Mächtigkeit und Eleganz betont. Häufig beschränkt sich dies auf die Aufzählung der fortgeschrittenen Sprachelemente wie Funktionsliterale, Closures, Pattern-basierte Programmierung, Actors, Spracherweiterung durch DSLs und viele mehr. Es bleibt dem Zuhörer überlassen zu verstehen, warum diese Sprachelemente für ihn von Vorteil sind und wie sich diese in der Programmierung mit Scala konkret ausdrücken.

In der reinen OO-Programmierung haben sich, aus den Erfahrungen mit Smalltalk, die Entwurfsmuster als sehr produktive Werkzeuge zum Anwendungsdesign entwickelt. Letztlich drücken Entwurfsmuster, wie der Name schon sagt, Programmmuster aus, die durch ihre formelhafte Definition und gleichförmigen Einsatz quasi zu neuen, höherwertigen Sprachelementen werden. Ein Visitor-Pattern wird ohne Betrachtung der Implementierungsdetails unmittelbar verstanden. Entwurfsmuster hat es lange vor der Gang of Four bereits gegeben. Die ersten Entwurfsmuster entstanden im Kontext der funktionalen Programmierung, so zum Beispiel die map-Funktion, und viele der später als Entwurfsmuster formalisierten Konzepte in Smalltalk entstammen diesem funktionalen Programmiergedanken.

Es soll daher nicht verwundern, dass die in Scala zusammengefassten OO und funktionalen Programmierkonzepte zu neuen Entwurfsmustern führen, die auf den alten funktionalen Konzepten basieren. Diese Scala Entwurfsmuster zeichnen sich durch Kompaktheit und besondere Eleganz aus. Häufig kann man in Scala in wenigen Zeilen das Ergebnis eines seitenlangen Java Entwurfsmusters ausdrücken.

In diesem Vortrag betrachten wir die gängigsten Java-Entwurfsmuster und wie sie in Scala eingesetzt werden sowie neue typisch funktionale Entwurfsmuster. Projektleitern und den Entwicklern wird so ein Leitfaden an die Hand gegeben, wie auf der Ebene konkreter Designs Scala möglichst natürlich eingesetzt werden kann und damit das Potential von Scala ausgeschöpft wird.

Präsentation
Sponsored TalkFortgeschritteneDeutsch
Andreas Tönne

Andreas Tönne

Dipl. Inform. Andreas Tönne ist Direktor R&D der Firma NovaTec GmbH. Er hat Informatik an der Universität Dortmund studiert und war sechs Jahre wissenschaftlicher Mitarbeiter am Max-Planck-Institut für Informatik in Saarbrücken. Herr Tönne beschäftigt sich mit dem Technologietransfer von Forschungsergebnissen in die Praxis und der Einführung neuer fortschrittlicher Sprachen und Konzepte in den technologischen Kanon der NovaTec. Er ist Spezialist für dynamische Programmiersprachen und war über 25 Jahre Smalltalk-Evangelist.