Entwurfsmuster

Entwurfsmuster sind wiederverwendbare Lösungen für die Entwicklung von Software. Sie dienen als Vorlagen, die Programmierer beim Erstellen von Anwendungen verwenden können. Sie sind nicht auf einzelne Programmiersprachen beschränkt, sondern stellen Best Practices oder Heuristiken dar, die in verschiedenen Programmierumgebungen angewendet werden können.

Obwohl Entwurfsmuster nicht von einer bestimmten Sprache abhängen, enthalten sie häufig Objekte oder Klassen. Daher werden sie normalerweise mit der objektorientierten Programmierung in Verbindung gebracht. Einzelne Muster können in drei verschiedene Kategorien eingeteilt werden: 1) Erzeugungsmuster, 2) Strukturmuster und 3) Verhaltensmuster.

1. Erzeugungsmuster

Erzeugungsmuster beschreiben Möglichkeiten, Objekte mithilfe von Methoden zu erstellen, die für unterschiedliche Situationen geeignet sind. Das Muster „Singleton“ wird beispielsweise verwendet, um eine einfache Klasse zu erstellen, die nur eine Instanz besitzt. Ein häufiges Beispiel ist eine globale Variable, die im Quellcode eines Programms definiert ist. Ein Muster namens „Object Pool“ wird verwendet, um eine Klasse mit einem „Pool“ von Objekten zu erstellen, die bei Bedarf abgerufen werden können, anstatt sie neu zu erstellen. Dies wird häufig zum Zwischenspeichern verwendet.

2. Strukturmuster

Strukturmuster definieren die Beziehungen zwischen Objekten. Das Muster „Private Class Data“ wird beispielsweise verwendet, um den Zugriff auf eine bestimmte Klasse einzuschränken. Dadurch kann eine unerwünschte Änderung eines Objekts verhindert werden. Die Klasse „Decorator“ ermöglicht es dagegen, einem Objekt während der Laufzeit Verhaltensweisen und Zustände hinzuzufügen. Dies gibt Programmierern die Flexibilität, einem Objekt so viele Klassen wie nötig hinzuzufügen. Ein Beispiel ist ein Avatar in einem Videospiel, der im Verlauf des Spiels Waffen, Rüstungen und Gegenstände ansammelt. Die passend benannte Klasse „Decorator“ würde einen geeigneten Rahmen für diesen Prozess bieten.

3. Verhaltensmuster

Verhaltensmuster beschreiben das Verhalten von Objekten, beispielsweise die Art und Weise, wie sie miteinander kommunizieren. Ein Beispiel ist das Muster „Command“, das Objekte beschreibt, die Befehle ausführen. Das Muster „Memento“ zeichnet den Zustand eines Objekts auf, damit dieser auf den gespeicherten Zustand zurückgesetzt werden kann. Diese beiden Muster können gemeinsam verwendet werden, um in einem Programm die Vorgänge Rückgängig und Wiederholen auszuführen.

Zusammenfassung

Jede der drei Kategorien umfasst mehrere weitere Entwurfsmuster, die Programmierer verwenden können. Obwohl die Muster Softwareentwicklern hilfreiche Vorlagen bieten, werden sie manchmal dafür kritisiert, dass sie für bestimmte Anwendungen unnötig oder nicht spezifisch genug sind. Daher sind Entwurfsmuster zwar nützliche Werkzeuge für die Programmierung, müssen aber nicht genau befolgt werden, um ein gut gestaltetes Softwareprogramm zu erstellen.

Aktualisiert July 21, 2016 von Per C.

quizTesten Sie Ihr Wissen

What is the final stage of the System Development Lifecycle (SDLC)?

A
Testing
0%
B
Maintenance
0%
C
Deployment
0%
D
Planning
0%
Correct! Incorrect!     View the SDLC definition.
More Quizzes →

Das Tech Terms Computer-Lexikon

Die Definition von Entwurfsmuster auf dieser Seite wurde von den Autoren von TechTerms.com verfasst. Wenn Sie auf diese Seite verweisen oder diese Definition zitieren möchten, verwenden Sie bitte die grüne Zitierleiste direkt unterhalb der Definition.

Unser Ziel ist es, Computerbegriffe auf verständliche Weise zu erklären. Wir streben bei jeder veröffentlichten Definition nach Genauigkeit und Einfachheit. Wenn Sie Feedback zu dieser Definition haben oder einen neuen Fachbegriff vorschlagen möchten, kontaktieren Sie uns.

Der Tech Terms Newsletter

Erweitern Sie Ihr technisches Wissen mit unserem täglichen oder wöchentlichen Newsletter! Abonnieren Sie noch heute und erhalten Sie neue Begriffe und Quizze in Ihren Posteingang.

Melden Sie sich für den kostenlosen TechTerms‑Newsletter an

Wie oft möchten Sie eine E-Mail erhalten?

Sie können sich jederzeit über die Links in jeder E-Mail abmelden oder Ihre Einstellungen ändern. Fragen? Bitte kontaktieren Sie uns.

Hinweis: Der Newsletter wird auf Englisch versandt.