logo

OO Design Literatur

Evans, Eric: Domain-Driven Design

0321125215
Addison Wesley, 2004. ISBN 0-321-12521-5.

Eric Evans beschreibt in seinem bahnbrechenden Buch Domain-Driven Design, wie eine Business Domain analysiert und mittels dem sogenannten Knowledge Crunching Information in Wissen kondensiert werden kann. Als Resultat erhält man ein Modell, dass die Business Domäne einfach und umfassend zu beschreiben vermag.

Des weiteren fällt mit dem Modell die Ubiquitous Language an, jene Sprache, mit der frei von Redundanzen über das eigene Business kommuniziert werden kann.

Strukturiert werden die gefundenen Modelle schlussendlich in:

  • Entities
  • Value Object
  • Services
  • Modules
  • Aggregates
  • Factories
  • Repositories

Viele Fragen, die in grossen Software-Systemen auftreten, werden in diesem Buch beantwortet. Es sind dies zum Beispiel Transaktionen, Persistenz, Multi-User-Problematik, Arbeiten mit verteilten Systemen, etc.
Dieses Buch ist etwas vom Besten, was es derzeit auf dem Markt gibt und absolut empfehlenswert für den ambitionierten und erfahrenen Systemdesigner.

Greenfield, Jack et al.: Software Factories

0471202843
Wiley, 2004. ISBN 0-471-20284-3.

Das Zeitalter der Industrialisierung scheint auch in der Software-Entwicklung Einzug zu halten. Das Buch Software Factories beschreibt, wie Software-Modelle gebaut und mittels Factories instanziiert werden können.

Ein spannendes Buch für alle jene, die sich auf einem abstrakten Niveau mit der Meta-Modellierung von Software beschäftigen. Mehr

Stahl, Thomas; Völter, Markus: Modellgetriebene Softwareentwicklung

3898643107
dpunkt, 2005. ISBN 3-89864-310-7.

Software-Modelle zu bauen, muss nicht gleichbedeutend mit MDA sein. Stahl und Völter beschreiben in ihrem Buch das Model Driven Software Development (MDSD).

Siedersleben, Johannes: Moderne Softwarearchitektur

3898642925
dpunkt, 2004. ISBN 3-89864-292-5.

Siedersleben beschreibt in seinem Buch das Wesen der Modernen Software-Architektur und legt seinen Fokus auf einen geeignete Schichtung und die Schnittstelle zwischen den Schichten.

Eines der stärksten Kapitel beschäftigt sich mit der Klassifizierung von Funktionalität in Software Kategorien. Diese Kategorisierung vermag vor allem in grossen und komplexen Projekten eine wohltuende Ordnung zu schaffen.

Ebenfalls äusserst nützlich ist das Kapitel mit der Unterscheidung zwischen Fehler und Ausnahmen. So sind Fehler geplante Ereignisse und treten im Alltag immer wieder auf, während Ausnahmen auf Probleme in der Software selbst hinweisen.

Weitere Themen beschäftigen sich mit der Persistenz, mit Transaktionen und mit der GUI-Architektur. 

Gamma, Erich et al.: Design Patterns.

0201633612
Addison Wesley, 1995. ISBN 0-201-63361-2.

Ein Standardwerk, das in keiner Bibliothek fehlen sollte. Vor allem als Nachschlagewerk und Lebensgefährte gedacht. Das beste Buch auf seinem Gebiet! Sehr empfehlenswert für jedermann.

Buschmann, Frank et al.: A System Of Patterns

0471958697
Wiley, 1996. ISBN 0-471-95869-7.

POSA (Pattern Oriented System Architecture)
Ein Buch, dass sich mit dem Einsatz von Pattern in Software-Systemen beschäftigt.

Schmidt, Douglas: Pattern-Oriented Software Architecture (Vol. 2)

0471606952
Wiley, 2000. ISBN 0-471-60695-2.

POSA 2 (Pattern Oriented System Architecture)
Der Nachfolger von POSA. Empfehlenswert für alle, die sich mit Concurrency und Networking im OO Umfeld beschäftigen. Dank der profunden Erfahrung der Autoren im Echtzeitbereich auch ein guter Begleiter beim Entwicklen von Grundlagen-Software für Embedded-Systems. Themen sind Network Services and Configuration, Event Handling, Synchronization und Concurrency.

Fayad, Mohamed E.; Johnson Ralph E.: Domain-Specific Application Frameworks

0471332801
Wiley, 2000. ISBN 0-471-33280-1.

Dieses Werk beschreibt Frameworks aus den verschiedensten Problembereichen wie Supercomputing, Gesundheitswesen, Echtzeit-Systeme, Telekommunikation etc. Ein Muss für jeden Software-Architekten.

Douglass, Bruce Powel: Real-Time UML, Second Edition

0201657848
Addison Wesley, 1999. ISBN 0-201-65784-8.

Eine Einführung in die Modellierung Objekt-Orientierter Echtzeit-Systeme mit der UML. Dazu wird mit ROPES (Rapid Object-Oriented Process for Embedded Systems) ein eigener Software-Prozess eingeführt.

Douglass, Bruce Powel: Doing Hard Time

0201498375
Addison Wesley, 1999. ISBN 0-201-49837-5.

Weitergehende Konzepte zur Modellierung Objekt-Orientierter Echtzeit-Systeme mit der UML und dem ROPES Prozess.

Czarnecki, Krzystof; Eisenecker, Ulrich W.: Generative Programming

0201309777
Addison Wesley, 2000. ISBN 0-201-30977-7.

Ein wegweisendes Buch über die Konzepte der generativen Programmierung. Es werden zahlreiche Themen wie die generische Programmierung, die Aspekt-Orientierte Programmierung, C++-Meta-Programmierung, Intentional Programming etc. diskutiert.

Riel, Arthur J.: Object-Oriented Design Heuristics

020163385X
Addison Wesley, April 1996. ISBN 020163385X.

Auf sehr pragmatische Art und Weise werden über 60 Richtlinien für den richtigen Einsatz der OO-Technologie erläutert. Besonders dem noch nicht so er fahrenen OO-Programmierer sind diese sprachunabhängigen Richtlinien eine grosse Hilfe.

Fowler, Martin: Refactoring

0201485672
Addison Wesley, Juli 1999. ISBN 0201485672.

Besonders beim Umgang mit existierendem Code können einem die Tipps aus "Refactoring" sehr dienlich sein. Viele der Tipps haben aber Allgemeingültigkeit und sorgen für bessere Code-Qualität.