Die Bezeichnung Container wird in der Softwareentwicklung benutzt, aber auch in der Netzwerktechnik und bei Online-Diensten. Generell sind Container Behälter, die Objekte gleichen Typs aufnehmen. Das kann sich auf Dateiformate beziehen in denen Bitströme für die Übertragung zusammengefasst werden. Die Bezeichnung Containerformat wird bei Dateiformaten für Audio, Video und den Kopierschutz benutzt, außerdem in der Synchronous Digital Hierarchy ( SDH).
- In der Softwareentwicklung wird als Container ein Objekt bezeichnet, welches wiederum Objekte gleichen Typs aufnimmt. Eine Klasse mit der Hauptaufgabe, Objekte zu verwalten, wird Container genannt. Beispiele sind Listen, Vektoren und assoziative Felder. Im Allgemeinen kann man Objekte in einen Container einfügen und daraus entfernen.
Ein Container ist ein abstraktes Objekt, welches gleichartige Daten speichert. Dabei organisiert ein Container den benötigten Speicherplatz und stellt Methoden - auch Elementfunktionen genannt - zur Verfügung, um auf die Daten zuzugreifen. Der Zugriff auf die Daten erfolgt entweder direkt oder über Iteratoren, mit denen auf einzelne Datenelemente des Containers zugegriffen werden kann. Da bei der Entwicklung von Software häufig gleichartige Strukturen benötigt werden, bilden Container diese Strukturen - Daten und Funktionen - gleichsam übergeordnet ab. Dabei basieren Container auf Templates; was bedeutet, dass beliebige Datentypen in den Containern abgelegt werden können. Zudem haben viele Container gleichartige Elementfunktionen, um Daten zu bearbeiten.
Das Konzept der Container in C++ und Java unterscheidet in
- Sequentielle Container,
- Container-Adaptoren und
- Assoziative Container.
- In der SDH-Hierachie sind Container Bitströme der Eingangsbitraten. Unter einem Container wird die Grundpackungseinheit, die Nutzlastkapazität für die Tributary Units ( TU) verstanden. Die Bitrate eines Containers ist nominell synchron zur Grunddatenrate von SDH. Durch Hinzufügen eines Path Overhead ( POH) wird aus dem Container ein virtueller Container.