Container (Entwurfsmuster)
- Container (Entwurfsmuster)
-
Verwendung
Das Container-Entwurfsmuster wird im Bereich der Softwareentwicklung verwendet. Es wird in die Gruppe der Strukturmuster eingeordnet und teilt die Anwendungslogik in zwei Bestandteile. Zum einen wird eine Komponente benötigt, welche gezielt ihre Hauptaufgabe erfüllt. Ein dazugehöriger Container versorgt die Komponente mit allen benötigten Schnittstellen zu anderen Systemen. Eine Erweiterung ist, dass die Komponenten im Container zur Laufzeit beliebig hinzugefügt oder entfernt werden können. Dieses Entwurfsmuster ist kein ursprüngliches Muster der GoF.
Java EE
Das Entwurfsmuster findet z. B. bei der Java EE starke Verwendung und ist deren essentieller Bestandteil. So sind viele Dienste der Java EE mit diesem Pattern konstruiert. Zum Beispiel der Web-Container, welcher Servlets beinhaltet. Andere Beispiele sind EJB-Container oder JMS-Provider.
Bestandteile
Eine Komponente kapselt eine logische Information/Routine des Gesamtsystems. Sie kann zur Laufzeit verändert werden oder mit anderen Komponenten (eventuell aus anderen Containern) interagieren.
Jeder Container kann bestimmte Komponenten beinhalten. Die Komponenten werden komplett gekapselt und eventuelle Anfragen oder Ereignisse werden an diese vom Container weitergeleitet. Unter Umständen sorgt der Container mit bestimmten Routinen selbst für die Instanzierung der Komponenten.
Vorteile
- Das Prinzip der Kapselung wird stark unterstützt
- Die Komplexität des Systems für Weiterentwicklung wird extrem vermindert
- Veränderungen an den Komponenten gestalten sich relativ einfach
- Hohe Testbarkeit, Veränderbarkeit und Stabilität
Nachteile
- Teilweise höherer Aufwand bei der Entwicklung des Containers
- Eindeutige Definition der Schnittstelle zwischen Container und Komponente notwendig
Siehe auch
Wikimedia Foundation.
Schlagen Sie auch in anderen Wörterbüchern nach:
Container (Begriffsklärung) — Container (englisch Container ‚Behälter‘, von lateinisch continere ‚zusammenhalten‘, ‚enthalten‘) bezeichnet: Behältnisse: Container, allgemein einen Großraum Behälter ISO Container, ein spezieller nach ISO 668 genormte Großraumbehälter … Deutsch Wikipedia
Composite (Entwurfsmuster) — Das Kompositum (engl. Composite) ist ein Entwurfsmuster aus dem Bereich der Softwareentwicklung und gehört zu der Kategorie der Strukturmuster (Structural Patterns). Es wird angewendet um Teil Ganzes Hierarchien zu repräsentieren, indem Objekte… … Deutsch Wikipedia
Kompositum (Entwurfsmuster) — Das Kompositum (engl. Composite) ist ein Entwurfsmuster aus dem Bereich der Softwareentwicklung und gehört zu der Kategorie der Strukturmuster (Structural Patterns). Es wird angewendet um Teil Ganzes Hierarchien zu repräsentieren, indem Objekte… … Deutsch Wikipedia
Iterator (Entwurfsmuster) — Der Iterator ist ein Entwurfsmuster aus dem Bereich der Softwareentwicklung und gehört zu der Kategorie der Verhaltensmuster (Behavioural Patterns). Das Muster ist eines der sogenannten GoF Muster (siehe Viererbande). Es stellt Möglichkeiten zur… … Deutsch Wikipedia
Apache OpenEJB — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… … Deutsch Wikipedia
J2EE — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… … Deutsch Wikipedia
JEE — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… … Deutsch Wikipedia
JavaEE — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… … Deutsch Wikipedia
Java 2 Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… … Deutsch Wikipedia
Java 2 Platform Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… … Deutsch Wikipedia