Skip to main content

2024 | Buch

Patterns kompakt

Entwurfsmuster für effektive Softwareentwicklung

insite
SUCHEN

Über dieses Buch

Patterns kompakt fasst die wichtigsten Entwurfsmuster zusammen, die Sie für Softwareentwicklung benötigen. Sie finden praxisnahe und effektiv anwendbare Lösungen für typische Entwurfsprobleme.
Das Buch gliedert Patterns anhand typischer Aspekte des Softwareentwurfs: Basismuster für mehr Flexibilität und WartbarkeitPräsentationKommunikation und VerteilungIntegrationPersistenzDie sechste aktualisierte und erweiterte Auflage erklärt darüber hinaus weitere Musterkategorien.
Patterns kompakt unterstützt mit praktischen Tipps zur Softwareentwicklung und -architektur und gibt einen praxisorientierten Überblick zu wesentlichen Entwurfsmustern.

Inhaltsverzeichnis

Frontmatter
1. Grundlagen des Software-Entwurfs
Zusammenfassung
Dieses Kapitel erläutert einige fundamentale Prinzipien des Entwurfs von Softwaresystemen. Als weitere Hilfe stellen wir Ihnen in Form von Heuristiken einige allgemeine Leitlinien vor, die Sie in vielen Entwurfssituationen anwenden können. Diese sollen Ihnen dabei helfen, sich beim konkreten Design für oder gegen die Anwendung bestimmter Muster zu entscheiden.
Karl Eilebrecht, Gernot Starke
2. Erzeugungsmuster
Zusammenfassung
Sie müssen Instanzen von Objekten oder Services erzeugen. In einigen Fällen ist dies zeitaufwändig oder komplex – einige typische Muster können Ihnen dabei helfen, beispielsweise Abstract-Factory, Builder, Factory-Method, Singleton oder Object-Pool.
Karl Eilebrecht, Gernot Starke
3. Verhaltensmuster
Zusammenfassung
Sie möchten das konkrete Verhalten ihrer Komponenten oder Klassen steuern, ohne in if-then-else-Kaskaden zu geraten. Die in diesem Kapitel vorgestellten Muster sollen die Flexibilität Ihrer Software erhöhen und dabei Code-Degenerierung vermeiden. Beispiele sind Command, Command Processor, Iterator, Visitor, Strategy, Template Method und Observer.
Karl Eilebrecht, Gernot Starke
4. Strukturmuster
Zusammenfassung
Sie müssen Beziehungen zwischen einzelnen Teilen Ihres Systems aufbauen, möchten das aber auf kontrollierte und systematische Art-und-Weise tun. Einige wichtige Muster können Ihnen dabei helfen, beispielsweise Adapter, Bridge, Decorator, Fassade, Proxy, Model-View-Controller, Flyweight und Composite.
Karl Eilebrecht, Gernot Starke
5. Verteilung
Zusammenfassung
Sie möchten Aufgaben auf mehrere Ausführungseinheiten verteilen oder ganz einfach einen Client entfernte Services nutzen lassen. Dann können Muster wie Combined Method, Data Transfer Object, Active Object und Leader-Follower hilfreich sein.
Karl Eilebrecht, Gernot Starke
6. Integration
Zusammenfassung
Sie möchten unterschiedliche Teile Ihres Systems zusammenarbeiten lassen – aber das „jeder-ruft-jeden“-Chaos vermeiden? Typische Integrationsmuster können Ihnen helfen, etwa Wrapper, Gateway, PlugIn, Mapper oder Dependency-Injection.
Karl Eilebrecht, Gernot Starke
7. Persistenz
Zusammenfassung
Sie möchten Objekte dauerhaft speichern. Neben einer geeigneten O/R-Mapping Strategie können Ihnen Muster wie Identity Map, Lazy Load, Coarse-Grained Lock, Optimistic Offline Lock und Pessimistic Offline Lock bei der Lösung helfen.
Karl Eilebrecht, Gernot Starke
8. Datenbankschlüssel
Zusammenfassung
In Datenbanksystemen, zumindest in relationalen, haben wir es häufig mit der Notwendigkeit zu tun, eindeutige Schlüssel zu erzeugen. Einige Muster bieten Lösungen für diese spezielle Problemkategorie, beispielsweise Sequenzblock, UUIDs und Hashwertschlüssel.
Karl Eilebrecht, Gernot Starke
9. Sonstige Patterns
Zusammenfassung
Wir müssen zugeben, dass wir einige Muster zwar für sehr wichtig halten, uns andererseits aber kein besserer Kapitelname als „Sonstige Patterns“ eingefallen ist. In diese Kategorie fallen Währung (Money), Null-Object, Value-Object und Registry. Ebenfalls Unterschlupf gefunden haben Empfehlungen zu Schablonendokumentation und Inbetriebnahme.
Karl Eilebrecht, Gernot Starke
10. Patterns – Wie geht es weiter?
Zusammenfassung
In diesem Kapitel gehen wir auf die langfristige (neudeutsch: strategische) Verwendung von Patterns zum Wissenstransfer ein, der deutlich über das Thema Softwareentwurf hinauswirkt. Patterns ermöglichen, Erfahrungen, Wissen bzw. Können zu kodifizieren, um es so anderen zugänglich zu machen.
Karl Eilebrecht, Gernot Starke
Backmatter
Metadaten
Titel
Patterns kompakt
verfasst von
Karl Eilebrecht
Gernot Starke
Copyright-Jahr
2024
Electronic ISBN
978-3-658-43234-8
Print ISBN
978-3-658-43233-1
DOI
https://doi.org/10.1007/978-3-658-43234-8

Premium Partner