Ein Entwurfsmuster (Design Pattern) beschreibt eine in der Praxis bewährte Lösung für ein Entwurfsproblem. Der erste Katalog mit 23 Mustern wurde von Gamma, Helm, Johnson und Vilissides 1995 erstellt. Die bekanntesten Entwurfsmuster wie Adapter, Facade, Observer oder Proxy stammen aus diesem Buch.
Die Entwurfsmuster sind unabhängig von der Programmiersprache und dem fachlichen Kontext, in dem sie verwendet werden. Sie sind wiederverwendbare Mikroarchitekturen.
Die Beschreibung der Lösung verwendet sowohl Text als auch (UML-) Diagramme, ggf. auch Quelltexte. Die Beschreibung gliedert sich in vier wesentliche Teile:
NameName des Entwurfsmusters, ggf. weitere synonyme Namen des Musters
ProblemDas Entwurfsproblem wird unter verschiedenen Gesichtspunkten beschrieben. Kräfte werden diskutiert, die bei der Lösung des Problems abgewogen und ausbalanciert werden müssen. Kräfte sind nicht-funktionale Anforderungen wie z.B. Ressourcenverbrauch, Konsistenz, Flexibilität.
LösungDie Lösungsidee wird kurz dargestellt. Anwendbarkeit des Musters wird aufgezeigt.
Die Abschnitte Structure, Dynamics, Implementation und Variants geben eine detaillierte Beschreibung des Musters aus verschiedenen Sichten.
Konsequenzen und Kosten der AnwendungDie Auswirkungen der Verwendung eines Musters sind Entscheidungsgrundlage für seinen Einsatz. Auswirkungen können Kosten in Performance oder Flexibilität sein. |