Flexibel programmieren mit dem Fluent Interface

Seite 6: Fazit

Inhaltsverzeichnis

Durch evolutionäres Design getriebenen entwickelte sich aus einer "festen API", die unlesbar, unflexibel, unübersichtlich und inkonsistent war, zunächst eine "zartschmelzende API". Diese war jedoch unübersichtlich aufgrund eines naiven Entwurfes, der keine Grammatik berücksichtigte, und ermöglichte eine inkonsistente Objekterzeugung. Hieraus entwickelte sich ein Objekt mit einer "flüssigen Schnittstelle", das eine Grammatik vorgegeben hat und damit eine konsistente Objekterzeugung gewährleistete. Lediglich die Übersichtlichkeit bei der Betrachtung der Objektschnittstelle war noch verbesserungsbedürftig. Hierfür sorgte der letzte Schritt in der Evolution des Beispiels: der "flüssige Erbauer".

[1] Eric Evans; Domain-driven Design; Tackling Complexity in the Heart of Software; Addison-Wesley, 2004

Bernd Schiffer
ist Senior-Softwareentwickler bei der akquinet it-agile GmbH Hamburg.