Eine Bibliothek (englisch library) ist eine Sammlung von fertigem, wiederverwendbarem Code, den Programme einbinden können, statt jede Funktion selbst zu schreiben. Bibliotheken sparen Zeit und machen Software sicherer, weil bewährter Code nicht jedes Mal neu erfunden wird.
Statische und dynamische Bibliotheken
Es gibt zwei Grundformen, wie Bibliotheken in ein Programm gelangen:
- Statische Bibliotheken (
.aunter Linux,.libunter Windows) werden beim Kompilieren direkt in das Programm kopiert. Das Programm ist dadurch eigenständig, aber größer. - Dynamische Bibliotheken (
.sounter Linux,.dllunter Windows,.dylibunter macOS) werden erst beim Start des Programms geladen. Mehrere Programme können sich eine Instanz teilen — Updates der Bibliothek wirken sofort auf alle Programme.
Beispiele aus der Praxis
- Die Standardbibliothek deiner Programmiersprache enthält Grundfunktionen wie Ein-/Ausgabe, Strings und Datumsberechnung.
- Sprachspezifische Pakete wie
requests(Python) oderexpress(Node.js) erweitern die Sprache um fertige Fähigkeiten. - Eine API ist die Schnittstelle, über die eine Bibliothek ihre Funktionen nach außen anbietet.
Bibliothek oder Framework?
Der Unterschied zum Framework liegt in der Kontrolle: Bei einer Bibliothek rufst du den Code auf, beim Framework ruft das Framework deinen Code auf. Vereinfacht gesagt: Du benutzt die Bibliothek, aber das Framework benutzt dich.
Praxis-Tipps
- Installiere Bibliotheken möglichst über den Package-Manager deiner Sprache (npm und pip, composer) — so bleiben Versionen und Abhängigkeiten nachvollziehbar.
- Prüfe, ob eine Bibliothek gepflegt und weit verbreitet ist, bevor du sie in ein Projekt aufnimmst — Open Source heißt nicht automatisch sicher.
- Eine gute Bibliothek dokumentiert ihre API klar und liefert Beispiele. Dazu gehört auch die Einordnung in ein Repository mit Versionshistorie.