Aggregation (objektorientierte Programmierung)

Aggregation (objektorientierte Programmierung)
Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Eine Aggregation in der Informatik ist entweder eine Verbindung zwischen Daten bzw. Objekten oder der Prozess der Erstellung von Metadaten aus Daten. Die Daten werden dabei einer bestimmten Gruppe zugeordnet und es werden allgemeine Aussagen über die Gruppe gemacht. Für die Untergebiete der Informatik gibt es jedoch noch zusätzliche Bedeutungen.

Inhaltsverzeichnis

Datenbank

(SQL-)Anfragen an ein Datenbankmanagementsystem geben meist Mengen von Datensätzen zurück. Jedoch können durch Aggregatfunktionen auch zusammengefasste Informationen ermittelt werden. Ein einfaches Beispiel ist die Errechnung eines Durchschnittsalters aus einer Personentabelle.

Beispiel: Durchschnittsalter

Bei einer vorhandenen Personentabelle mit den Spalten Name und Alter soll das Durchschnittsalter errechnet werden.

Personen
Name Alter
Hans 25
Herbert 37
Helmut 56

Mit SELECT * FROM Personen können alle Datensätze erhalten werden. Eine Aggregation (das Errechnen des Durchschnittsalters) könnte per programmierter Anwendungslogik nachträglich durchgeführt werden.

Die modifizierte Anfrage SELECT AVG(Alter) FROM Personen (AVG steht für average dt. Durchschnitt) gibt das Durchschnittsalter sofort zurück (in diesem Fall 39 1/3).

„is-part-of“-Beziehung

Eine andere Verwendung des Begriffs Aggregation ist auch beim Entity-Relationship-Modell zu finden. So können hier mehrere Einzelobjekte logisch zu einem Gesamtobjekt zusammengefasst werden. Dies geschieht mit der „is-part-of“-Beziehung.

OLAP

Ähnliche Verwendung findet Aggregation auch im Bereich der OLAP-Systeme. Hier gilt das gleiche Prinzip wie bei den einfachen Aggregatsfunktionen von SQL. Jedoch handelt es sich dort um die Verdichtung ganzer Datenwürfel.

Objektorientierte Softwareentwicklung

In der objektorientierten Programmierung ist die Aggregation eine besondere Art der Assoziation zwischen „Objekten“. Sie beschreibt eine schwache Beziehung zwischen Objekten. Ein Objekt ist „Teil“ eines anderen „ganzen“ Objekts, welches jedoch im Gegensatz zur Komposition ohne das aggregierte Objekt existieren kann. In der UML wird die Aggregation durch eine leere Raute symbolisiert.

Beispiel: Dateisystem

Ein Ordner kann mehrere Dateien enthalten. Zwischen Ordner und Datei herrscht eine Aggregationsrelation, da eine Datei auch existieren kann, wenn sie sich nicht in dem Ordner befindet.

Routing

Aggregation bedeutet im Zusammenhang mit Routingprotokollen (beispielsweise BGP, OSPF oder IS-IS), dass mehrere Routen (teilweise engl. Prefixes genannt) zu einer Route zusammengefasst werden können, ohne dass die enthaltene Ziel-Information dadurch inhaltlich verändert wird. Sinn dieser Maßnahme ist, die Anzahl der zu verwaltenden Routen zu minimieren und damit die Effizienz des Routingprotokolls zu steigern.

Diese Technologie erfordert die Verfügbarkeit von Classless Inter-Domain Routing.

Aggregation kann auch zum Steuern des Routings verwendet werden indem ein Teil einer aggregierten Route durch eine genauere Route (engl. more specific) ebenfalls propagiert wird. Die genauere Route gewinnt hier für das spezifischere Ziel, während der übrige Bereich der Aggregierten Route folgt.

Siehe auch


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Vererbung (objektorientierte Programmierung) — Vererbung dargestellt mittels UML. Die abgeleitete Klasse hat die Attribute x und y und verfügt über die Methoden a und b (im UML Sprachgebrauch Operationen a und b). Die Vererbung (engl. Inheritance) ist eines der grundlegenden Konzepte der… …   Deutsch Wikipedia

  • Kapselung (objektorientierte Programmierung) — Die Objektorientierung, kurz OO, ist ein Ansatz zur Entwicklung von Software, der darauf beruht, die zu verarbeitenden Daten anhand ihrer Eigenschaften und der möglichen Operationen zu klassifizieren. Im Vergleich zu Ansätzen, bei denen… …   Deutsch Wikipedia

  • Aggregation (Programmierung) — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Eine Aggregation in der Informatik ist entweder eine Verbindung… …   Deutsch Wikipedia

  • Aggregation (Routing) — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Eine Aggregation in der Informatik ist entweder eine Verbindung… …   Deutsch Wikipedia

  • Aggregation (Informatik) — Dieser Artikel wurde aufgrund von inhaltlichen Mängeln auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf… …   Deutsch Wikipedia

  • Vererbung (Programmierung) — Vererbung dargestellt mittels UML. Die abgeleitete Klasse hat die Attribute x und y und verfügt über die Methoden a und b (im UML Sprachgebrauch Operationen a und b). Die Vererbung (engl. Inheritance) ist eines der grundlegenden Konzepte der… …   Deutsch Wikipedia

  • Is-a — Vererbung dargestellt mittels UML. Die abgeleitete Klasse hat die Attribute x und y und verfügt über die Methoden a und b (im UML Sprachgebrauch Operationen a und b). Die Vererbung (engl. Inheritance) ist eines der grundlegenden Konzepte der… …   Deutsch Wikipedia

  • Elementfunktion — Die Objektorientierung, kurz OO, ist ein Ansatz zur Entwicklung von Software, der darauf beruht, die zu verarbeitenden Daten anhand ihrer Eigenschaften und der möglichen Operationen zu klassifizieren. Im Vergleich zu Ansätzen, bei denen… …   Deutsch Wikipedia

  • Objektmethode — Die Objektorientierung, kurz OO, ist ein Ansatz zur Entwicklung von Software, der darauf beruht, die zu verarbeitenden Daten anhand ihrer Eigenschaften und der möglichen Operationen zu klassifizieren. Im Vergleich zu Ansätzen, bei denen… …   Deutsch Wikipedia

  • Objektorientiert — Die Objektorientierung, kurz OO, ist ein Ansatz zur Entwicklung von Software, der darauf beruht, die zu verarbeitenden Daten anhand ihrer Eigenschaften und der möglichen Operationen zu klassifizieren. Im Vergleich zu Ansätzen, bei denen… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”