OOP 2010: Prozesse statt Programmierung
Objektorientierung ist längst nicht mehr das zentrale Thema der OOP. Das bekräftigte während der 19. Auflage der Konferenz nicht zuletzt eine der Keynotes.
- Alexander Neumann
- Kersten Auel
War die OOP, die vom 25. bis 29. Januar in ihrer 19. Auflage in München stattfand, früher eine Pflichtveranstaltung für den klassischen Programmierer, ist sie über die Jahre hinweg mehr und mehr zur Konferenz für Projektleiter und Softwarearchitekten geworden. Das drückt sich etwa darin aus, dass eine Präsentation zur nächsten Generation von Eclipse (e4) nur etwas mehr als eine Handvoll Besucher fand. Noch vor wenigen Jahren wäre eine solche Session sicherlich ein Publikumsmagnet gewesen. Dass ein aktueller Eclipse-Vortrag so wenig Anklang findet, liegt sicherlich nicht an Eclipse, denn Eclipse 4 enthält einiges an Spannendem, um zur zuweilen in den letzten Jahren innovativer erscheinenden NetBeans- und IntelliJ-IDEA-Entwicklung aufzuschließen.
So wird man in der Version 4, die im Juli 2010 final freigegeben werden soll, die Umsetzung von Dependency Injection sowie die Unterstützung für deklarative Oberflächen und für Webtechniken wie HTML, JavaScript und CSS finden. Ziel ist, mit Eclipse einfacher Plug-ins schreiben zu können, ein besseres Look & Feel für Eclipse-Produkte zu ermöglichen, eine einheitliche Plattform für Web, Desktop, Server und Embedded zu bieten und bei alledem weitgehend rückwärtskompatibel mit früheren Versionen der Entwicklungsumgebung zu sein.
(Bild:Â Sigs-Datacom)
Die letzten Jahre schien der Veranstalter, SIGS-DATACOM, mit der Entscheidung, von technischen Themen eher abzurücken und auf Projektmanagementvorträge zu setzen, richtig gelegen zu haben. Der Teilnehmer fand eine nahezu unveränderte Anzahl Besucher vor, und die Ausstellung führte zahlreiche große und kleine Unternehmen und war vor allem gut besucht. Dieses Jahr waren spürbar weniger Teilnehmer vor Ort, und die Messe zählte mit rund 70 Ständen etwas weniger als das letzte Jahr, wenn auch die Organisatoren sie wieder als "ausverkauft" meldeten. Die 1700 vom Veranstalter heise Developer gegenüber verzeichneten Teilnehmer inklusive der Besucher der kostenlosen Ausstellung und der Speaker dürften es sicherlich nicht gewesen, wie auch viele der Aussteller beklagten. Bei aller Spekulation, die solchen Zahlen immer zugrunde liegt, mögen die Gründe wohl auch in der finanziell angespannten Lage vieler IT-Abteilungen zu finden sein und nicht allein in der thematischen Ausrichtung der Konferenz, denn Letztere war durchaus ansprechend.
Vom Buzzword in den Alltag
Neben zu erwartenden Hypethemen wie Cloud Computing, Multicore-Programmierung oder agile Softwareentwicklungsmethoden dürften für viele die große Menge an praxisnahen Erfahrungsberichten wertvoll gewesen sein, die dem Motto der Konferenz "Productivity: People, Process, and Technology" in ihrer ganzheitlichen Sicht am nächsten gekommen sind.
(Bild:Â Sigs-Datacom)
Widmete die OOP den serviceorientierten Architekturen (SOA) vor drei Jahren noch einen ganzen Track, fanden sich dieses Jahr nur vereinzelte Vorträge zu dem Thema. Das bestätigt die Einschätzung der Panel-Teilnehmer im Vorjahr, die sich darin einig waren, dass der SOA-Hype vorbei sei und man sich jetzt mit den Alltagsproblemen auseinandersetzen müsse.
Clouds hingegen scheinen nicht mehr nur ein neues Buzzword zu sein. Einen Einblick in das "Distributed Computing" bei Google gab beispielsweise Gregor Hohpe, der erläuterte, warum man sich dort für bestimmte Techniken entschieden hat. Unter der Devise "Less is More" etwa hat man sich mit dem Einsatz des hauseigenen Datenbanksystems BigTable gegen Transaktionen entschieden und setzt auf einfache Datentypen. Da laut Hohpe die Frage nicht sei, ob ein System irgendwann ausfällt, sondern wann, gibt es drei Replikate der im Google File System (GFS) gespeicherten Daten.
Ganz andere Fragen verfolgte Adam Bien in seinem Vortrag. Hier ging es unter anderem um die Unterschiede der diversen Wolkensysteme. Von SaaS über PaaS bis zu Iaas – Cloud Software/Platform/Infrastructure as a Service – bis hin zu Public, Private, Community und Hybrid Clouds reichte seine Unterscheidung. Nicht zu vergessen die Abgrenzung zu Grids, in der einzelne Personen den Großteil der Rechenzeit verbrauchen, während es in der Cloud viele einzelne Benutzer gibt, die jeweils nur einen kleinen Teil der Ressourcen verbrauchen.
Visionären und zugleich retrospektiven Charakter hatten zwei der insgesamt sieben Keynotes. Bei beiden ging es um die Renaissance von Programmiersprachen. Dürfen die letzten Jahren eher als Epoche der Werkzeuge oder der Frameworks gelten, liegt das Augenmerk der jüngeren Vergangenheit wieder verstärkt auf den Sprachen selbst. Wie sich auf den Konferenzen und in Artikeln des letzten Jahres andeutete, bringen "Newcomer" wie Scala, Clojure und F# neue Begeisterung in die Zunft der Entwickler.
Auf sie gingen auch Klaus Alfert und Bernd Löchner von Zühlke in ihrer Keynote zur funktionalen Programmierung ein. Clojure ist ein Lisp-Dialekt, der Code für die Java Virtual Machine kompiliert und sich vor allem für die nebenläufige Programmierung eignet, und Microsofts F# geht auf den ML-Ableger OCaml zurück. Scala bezeichneten die beiden Zühlke-Angestellten als Hybrid aus funktionaler und objektorientierter Programmiersprache, das zudem die Java- und die .NET-Plattform anspricht.
Pragmatik statt Dogmatik
Das Interesse an der funktionalen Programmierung liegt in der Multicore-Programmierung begründet. Die Übergabe von Werten statt Objekten soll Inkonsistenzen verhindern, die sich dadurch ergeben, dass zwei Objekte gleichzeitig in einen Thread schreiben. Als Treiber sind Themen wie Serverkonsolidierung, Green-IT, steigender Admin-Aufwand und das Bedürfnis zu nennen, mehr aus sequenziellen Prozessen herausholen zu müssen. Die Konzepte funktionalen Programmierens sind nicht neu, doch im Gegensatz zu vor 20 Jahren liegen heute reifere Implementierungen und gute Plattformintegrationen vor. Von einem Paradigmenwechsel rede allerdings niemand mehr. Anders als früher sei nicht mehr das Allheilmittel gefragt. Vielmehr stehen Entwickler heute vor der Aufgabe, aus einer Vielzahl etablierter und neuer Sprachen die für ein Projekt jeweils richtige zu wählen.
(Bild:Â Sigs-Datacom)
Mit Programmiersprachen setzte sich auch Robert C. Martin auseinander. "Uncle Bob" hat sich einen Namen gemacht als Buchautor und Gründer von Object Mentor. Zudem ist er der Initiator der "Software Craftsmanship"-Bewegung. In seiner Keynote "The Polyglot Craftsman" gab er mit großem schauspielerischen Talent einen historischen Überblick zu den Hauptströmungen bei den Programmiersprachen. Er sieht ihre Evolution in Skriptsprachen wie Ruby, Python und Groovy münden, deren Vorteil es sei, dass man mit ihnen testgetrieben entwickle, sodass man nicht mehr schlechten Code schreiben könne. Zudem sieht er bei ihnen das Potenzial, fünfmal schneller entwickeln zu können.
Eine effektivere Entwicklung, die mit einer ebensolchen Validierung einhergeht, verfolgen auch die Vertreter der modellgetriebenen Entwicklung – nicht zuletzt durch den Einsatz einer domänenspezifischen Sprache. Die formale Beschreibung einer DSL hilft bei der Strukturierung einer Aufgabe, und Fehler in der Spezifikation lassen sich frühzeitig erkennen. Wie Markus Völter und Andreas Graf in ihrem Vortrag ausführten, seien Klassifizierung und Validierung gerade im Embedded-Bereich von Bedeutung, der sich an die schnelle Weiterentwicklung mobiler Geräte anpassen muss. Bei der Einführung einer DSL sei es durchaus möglich, die Abstraktion stufenweise zu erhöhen, sodass man beispielsweise für Entwickler, die hardwarenah programmieren, zunächst eine C-ähnliche Syntax wählt.
Die OOP 2010 war eine in der Auswahl der Themen sowie in der Qualität und professionellen Darbietung der Vorträge gelungene Veranstaltung. Die Konferenz mag zwar weniger Besucher gezogen zu haben, leer waren die Flure noch lange nicht, und auch das für Konferenzen dieser Art wichtige Networking ist für die meisten Teilnehmer sicherlich nicht zu kurz gekommen. Es bleibt zu wünschen, dass die OOP zum Jubiläum im nächsten Jahr sich treu bleibt und wieder ein größeres Publikum findet. Die OOP 2011 findet vom 24. bis 28. Januar statt. (ane)