Strukturmuster

Die Kategorie Strukturmuster umfasst Muster, die verschiedene Typen von Strukturelementen einschließlich strukturellen Antimustern aufweisen.

Zweck

In der folgende Tabelle sind die Muster der Kategorie Strukturmuster sowie ihr Zweck zusammengestellt.
Muster Zweck
Komponente des Typs Cyclic Dependency Eine Komponente des Typs Cyclic Dependency ist ein strukturelles Antimuster, das aus voneinander abhängigen Komponenten besteht. Zyklische Abhängigkeiten zwischen Komponenten werden als schwer wiegender Architekturfehler betrachtet. Diese Abhängigkeiten erschweren das Verstehen und Pflegen des Codes. Noch wichtiger ist, dass zyklische Abhängigkeiten Tests, parallele Entwicklung und Wiederverwendung erschweren. Umfangreiche Software mit zahlreichen zyklischen Abhängigkeiten ist instabil.
Komponente des Typs Global Breakable Eine Komponente des Typs Global Breakable ist ein strukturelles Antimuster für eine Systemkomponente, die häufig von Änderungen einer anderen Komponente betroffen ist. Mit Ausnahme von konkreten Implementierungen auf hoher Ebene sind Global Breakables unerwünscht, da sie ein Zeichen für mangelnde Stabilität und Modularität des Systems sind.
Komponente des Typs Global Butterfly Eine Komponente des Typs Global Butterfly ist ein Strukturmuster für ein Objekt mit zahlreichen globalen abhängigen Komponenten. Änderungen eines Global Butterflys haben häufig erhebliche Auswirkungen auf das System. Aus diesem Grund sollte ein Global Butterfly nur als Basissystemschnittstelle oder als Dienstprogrammklasse verwendet werden.
Komponente des Typs Global Hub Eine Komponente des Typs Global Hub ist ein strukturelles Antimuster für eine Komponente, die zahlreiche globale Abhängigkeiten und globale abhängige Komponenten aufweist. Änderungen im System haben häufig Auswirkungen auf globale Hubs. Änderungen am Hub wiederum haben erhebliche Auswirkungen auf das System. Globale Hubs sind unerwünscht, das sie ein Zeichen für Instabilität und mangelnde Modularität des Systems sind.
Komponente des Typs Local Breakable Eine Komponente des Typs Local Breakable ist ein strukturelles Antimuster für eine Komponente, die zahlreiche unmittelbare Abhängigkeiten aufweist. Solche Komponenten sind häufig funktional überlastet und zeichnen sich in der Regel durch viele lange Methoden aus. Durch die Verwendung von Breakables im Code wird dieser schwer verständlich, aufwendig in der Pflege und problematisch bei der Wiederverwendung.
Komponente des Typs Local Butterfly Eine Komponente des Typs Local Butterfly ist ein Strukturmuster für eine Komponente mit zahlreichen unmittelbar abhängigen Komponenten. Änderungen eines Local Butterflys haben häufig erhebliche unmittelbare Auswirkungen auf das übrige System. Aus diesem Grund sollte ein Local Butterfly nur als Basissystemschnittstelle oder als Dienstprogrammklasse verwendet werden.
Komponente des Typs Local Hub Eine Komponente des Typs Local Hub ist ein strukturelles Antimuster für eine Komponente, die zahlreiche unmittelbare Abhängigkeiten und zahlreiche unmittelbare abhängige Komponenten aufweist. Solche Komponenten sind häufig funktional überlastet und dienen zudem als Dienstprogramm oder allgemein verwendete Komponente. Durch die Verwendung von Hubs im Code wird dieser schwer verständlich, aufwendig in der Pflege und problematisch bei der Wiederverwendung. Hubs machen den Code zudem instabil.
Paket des Typs Cyclic Dependency Ein Paket des Typs Cyclic Dependency ist ein strukturelles Antimuster, das aus voneinander abhängigen Paketen besteht. Eine zyklische Abhängigkeit zwischen Paketen wird als schwer wiegender Mangel der Architektur betrachtet. Eine solche Abhängigkeit erschwert das Verstehen und Pflegen des Codes. Noch wichtiger ist die Tatsache, dass zyklische Abhängigkeiten die Testbarkeit, parallele Entwicklung und Wiederverwendung von Code untergraben. Komplexe, umfangreiche Software mit zahlreichen zyklischen Abhängigkeiten ist instabil.
Paket des Typs Global Breakable Ein Paket des Typs Global Breakable ist ein strukturelles Antimuster für ein Paket mit zahlreichen globalen Abhängigkeiten. Solche Pakete sind häufig funktional überlastet. In der Regel enthalten sie eine Reihe von Komponenten mit zahlreichen globalen Abhängigkeiten.
Paket des Typs Global Butterfly Ein Paket des Typs Global Butterfly ist ein Strukturmuster für ein Paket mit zahlreichen globalen abhängigen Komponenten. Änderungen eines Global Butterflys haben häufig erhebliche Auswirkungen auf das System. Aus diesem Grund sollte ein Paket des Typs Global Butterfly entweder nur aus Basissystemschnittstellen oder nur aus Dienstprogrammklassen bestehen.
Paket des Typs Global Hub Ein Paket des Typs Global Hub ist ein strukturelles Antimuster für ein Paket mit zahlreichen unmittelbaren Abhängigkeiten. Solche Pakete sind global funktional überlastet und dienen auch als Dienstprogramm oder allgemein verwendetes Paket. Ein Paket des Typs Global Hub enthält in der Regel mehrere globale Abhängigkeiten und abhängige Komponenten. Pakete des Typs Global Hub verhindern die Wiederverwendbarkeit von Modulen und erschweren das Verstehen und die Pflege des Codes.
Paket des Typs Local Breakable Ein Paket des Typs Local Breakable ist ein strukturelles Antimuster für ein Paket mit zahlreichen unmittelbaren Abhängigkeiten. Solche Pakete sind häufig funktional überlastet. In der Regel enthalten sie eine große Zahl von Komponenten oder mehrere Komponenten mit zahlreichen unmittelbaren Abhängigkeiten. Durch die Verwendung von Paketen des Typs Local Breakable im Code wird dieser schwer verständlich, aufwendig in der Pflege und problematisch bei der Wiederverwendung.
Paket des Typs Local Butterfly Ein Paket des Typs Local Butterfly ist ein Strukturmuster für ein Paket mit zahlreichen unmittelbar abhängigen Komponenten. Solche Pakete dienen als Dienstprogramm oder allgemein verwendetes Paket.
Paket des Typs Local Hub Ein Paket des Typs Local Hub ist ein strukturelles Antimuster für ein Paket mit zahlreichen unmittelbaren Abhängigkeiten und abhängigen Komponenten. Solche Pakete sind häufig funktional überlastet und dienen zudem als Dienstprogramm oder allgemein verwendetes Paket. Ein Paket des Typs Local Hub enthält in der Regel eine große Zahl von Komponenten, die zahlreiche unmittelbare Abhängigkeiten aufweisen können. Durch die Verwendung von Hubs im Code wird dieser schwer verständlich, aufwendig in der Pflege und problematisch bei der Wiederverwendung. Hubs machen den Code zudem instabil.
Rechtliche Hinweise | Feedback
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.