Eine Library oder Bibliothek ist eine Sammlung von Code, der in anderen Anwendungen eingebunden und genutzt werden kann. Libraries bündeln Code zu bestimmten Themenkomplexen, z. B. zu mathematischen Operationen oder Webentwicklung. Sie stellen beliebig wiederverwendbare Funktionen zur Verfügung und können ganz nach Bedarf in jedem beliebigen Projekt eingesetzt werden.
Bibliotheken sind immer in einer spezifischen Programmiersprache verfasst und erweitern die grundlegenden Kapazitäten der jeweiligen Programmiersprache um neue Möglichkeiten. Das verkürzt Entwicklungszeiten und erleichtert Entwicklern die Arbeit.
Welche Arten von Libraries gibt es?
Ganz allgemein ausgedrückt ist eine Bibliothek eine Codesammlung, mit der eine Programmiersprache um neue, vorgefertigte Funktionen und Klassen erweitert werden kann. Standardbibliotheken und Frameworks sind gängige Arten von Libraries, die in den meisten Softwareprojekten genutzt werden.
Standardbibliotheken
Standardbibliotheken sind grundlegende Programmbibliotheken und umfassen alle standardmäßig verfügbaren Möglichkeiten einer Programmiersprache. Theoretisch kann auch ohne Standardbibliotheken mit einer Programmiersprache gearbeitet werden. Diese Sammlungen umfassen jedoch wirklich fundamentale Aspekte, welche in praktisch jedem Programm gebraucht werden. Ohne eine Standardbibliothek wie iostream müssten z. B. in C++ alle Funktionen rund um das Lesen und Schreiben von Dateien manuell programmiert werden.
Frameworks
Frameworks sind umfassende Sammlungen gängiger Funktionen zu einem bestimmten Zweck, z. B. Webentwicklung. Sie decken in der Regel nahezu alles ab, was ein Entwickler benötigt, um seine Arbeit effizienter und komfortabler zu gestalten. Beispiele für gängige Themenbereiche, die durch Frameworks abgedeckt werden, sind unter anderem:
Oberflächenentwicklung: UI-Frameworks stellen vorgefertigte und individualisierbare Elemente für benutzerfreundliche Oberflächen zur Verfügung.
Web-Entwicklung: Frameworks für das Web machen leistungsfähige Webanwendungen einfacher zu realisieren.
App-Entwicklung: Frameworks für App-Entwicklung schaffen eine Plattform, mit der eine einmal entwickelte Lösung für verschiedene Gerätetypen und Betriebssysteme bereitgestellt werden kann, z. B. als native App.
Libraries können in statischer oder dynamischer Form vorliegen.
Statische Bibliotheken
Statische Libraries werden beim Kompilieren des Programmcodes direkt mit in das Programm eingebunden. Das bedeutet, dass immer genau der Stand der Bibliothek vorliegt, der beim Kompilieren verwendet wurde. Je nachdem, wie der verwendete Linker funktioniert, wird die gesamte Bibliothek angehängt oder eine eigene Bibliothek geschaffen, welche nur die verwendeten Aspekte der verknüpften Libraries enthält.
Letzterer Ansatz sorgt dafür, dass das Programm insgesamt keine unnötig hohe Dateigröße entwickelt. Die Entscheidung für eine statische Bibliothek ist z. B. dann relevant, wenn garantiert werden muss, dass die Software in jedem Szenario alle Ressourcen enthält, die sie für den einwandfreien Betrieb benötigt.
Dynamische Bibliotheken
Dynamische Libraries werden erst zur Laufzeit eines Programms in den Speicher geladen. Das hat den Vorteil, dass Programmcode und der Code der Library voneinander getrennt aufbewahrt werden. Die Dateigröße des Programms selbst bleibt dadurch geringer.
Die dynamische Einbindung bedeutet außerdem, dass Änderungen an einer Bibliothek (z. B. Fehlerbehebungen) spätestens dann verfügbar werden, wenn die Software neu gestartet wurde. Das Programm muss nicht neu kompiliert werden, um die Neuerungen verfügbar zu machen. Darin liegt jedoch auch der Nachteil, dass eine fehlerhafte Aktualisierung einer Bibliothek direkte Auswirkungen auf die Funktionsfähigkeit einer Software haben kann.
Welche Vorteile bietet die Verwendung von Libraries?
Die Verwendung von Libraries bietet Entwicklern viele Vorteile. Sie beschleunigen die Entwicklung von Software, indem sie wiederverwendbaren Code bereitstellen. Statt häufiger benötigte Funktionen selbst zu programmieren, können die entsprechenden Bibliotheken eingebunden und sofort genutzt werden. Der Code kann in jedem beliebigen Projekt genutzt werden, solange die Programmiersprachen von Software und Bibliothek übereinstimmen. Neben externen Bibliotheken von Dritten können so auch interne Bibliotheken und Frameworks mit firmenspezifischen Basisfunktionen geschaffen werden.
Die Nutzung von vorgefertigten Bibliotheken kann außerdem dazu beitragen, die Qualität einer Software zu verbessern. Libraries werden häufig mit der Motivation geschaffen, robuste, effiziente und fachlich einwandfreie Lösungen für gängige Szenarien zu finden. Entwickler können sich auf die Expertise der Autoren stützen, statt sich selbst in eine für sie fremde Materie einzuarbeiten. Sie müssen lediglich verstehen, wie die Bibliothek richtig angewendet wird, um eine hochwertige Anwendung zu entwickeln.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Fazit
Libraries sind ein wichtiges Werkzeug, das Entwicklern die Arbeit vereinfacht. Von Standardbibliotheken über umfassende Frameworks bis hin zu hochgradig spezialisierten Bibliotheken für Nischenanwendungen gibt es heute eine große Auswahl an Libraries. Sie sind ein fester Bestandteil moderner Softwareentwicklung und tragen dazu bei, dass auch komplexe Programme schneller und in besserer Qualität entwickelt werden können.