magicmarcy.de | Library vs. Framework

Library vs. Framework

Programming • 22. Mai 2025 • Lesezeit: 4 Minuten

In der Softwareentwicklung stolpert man schnell über die Begriffe Library und Framework.Beide liefern fertige Bausteine, um schneller ans Ziel zu kommen. Doch obwohl sie sich ähnlich anhören, bzw. im allgemeinen Sprachgebrauch auch oft verwechselt werden, verfolgen sie ganz unterschiedliche Prinzipien. In diesem Artikel schauen wir uns die Unterschiede an – praxisnah und mit Beispielen aus Java sowie HTML, CSS und JavaScript.

Der wichtigste und zentrale Unterschied zwischen einer Libary und einem Framework lässt sich so zusammenfassen:

Library: Du rufst den Code der Library auf.
Framework: Das Framework ruft deinen Code auf.

Ein Framework gibt den Rahmen vor und verlangt, dass du dich daran hältst – Stichwort: Inversion of Control. Bei einer Library bleibst du der Boss und bestimmst, wann und wie du sie nutzt.

 

Beispiel 1: Java – Logging mit einer Library vs. Web-Entwicklung mit einem Framework

Java Library: SLF4J + Logback

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Main {
    private static final Logger log = LoggerFactory.getLogger(Main.class);

    public static void main(String[] args) {
        log.info("Hello from a Java logging library!");
    }
}

In diesem Beispiel rufst du die Logging-Methoden auf. Die Library (SLF4J) tut nur das, was du ihr sagst – du kontrollierst den Ablauf.

Java Framework: Spring Boot

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String sayHello() {
        return "Hello from a Java framework!";
    }
}

Spring Boot ist ein Framework. Es übernimmt die Kontrolle: Es startet einen Server, scannt deine Klassen, registriert deine Endpunkte und ruft deine Methode sayHello() auf, wenn jemand /hello aufruft. Du steckst deinen Code in den Rahmen, den Spring vorgibt.

 

Beispiel 2: JavaScript – Library vs. Framework

Library: jQuery

<button id="btn">Klick mich</button>

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
  $('#btn').click(function () {
    alert('Hallo von einer JavaScript-Library!');
  });
</script>

Du bestimmst, wann du jQuery verwendest und was passieren soll – du rufst jQuery auf.

Framework: Vue.js

<div id="app">
  <button @click="greet">Klick mich</button>
</div>

<script src="https://cdn.jsdelivr.net/npm/vue@3"></script>
<script>
  Vue.createApp({
    methods: {
      greet() {
        alert('Hallo von einem JavaScript-Framework!');
      }
    }
  }).mount('#app');
</script>

Vue.js gibt den Ablauf vor. Dein Code (die Methode greet) wird vom Framework aufgerufen, wenn ein Button geklickt wird. Du bindest dich an das Lebenszyklusmodell des Frameworks.

 

Was soll ich wann verwenden?

Entscheidungskriterium Libary Framework
Kontrolle Du behälst die Kontrolle Framework übernimmt die Kontrolle
Einstieg Leicht und schnell Oft steilere Lernkurve
Flexibilität Sehr hoch Eingeschränkt durch Vorgaben
Struktur Muss selbst organisiert werden Bringt eine feste Struktur mit
Beispiel SLF4J, jQuery, Lodash Spring Boot, Angular, Vue.js

 

Fazit

Ob Library oder Framework – beides hat seine Daseinsberechtigung. Libraries eignen sich hervorragend, wenn du gezielt Funktionen benötigst. Frameworks helfen dir, große Anwendungen mit klarer Struktur aufzubauen. In der Praxis ist es oft eine Mischung: Du nutzt ein Framework als Fundament und ergänzt es mit Libraries.

Hast du auch schon Erfahrungen mit verschiedenen Libaries und/oder Frameworks gemacht? Berichte gern in den Kommentaren von deinen Erfahrungen.

Ich schreibe diese Beiträge in meiner Freizeit und freue mich über jede Unterstützung. Wenn du magst, kannst du mir auf Ko-Fi einen Kaffee spendieren. Danke! ♥️

Es wurden noch keine Kommentare verfasst, sei der erste!
Über
Avatar

Hi, ich bin Marcel!
Als Fachinformatiker für Anwendungsentwicklung und IHK-geprüfter Ausbilder teile ich auf meinem Blog Grundlagen- und Fortgeschrittenen-Wissen für angehende Entwickler*innen und Interessierte, sowie weitere spannende Themen aus der IT.

Blog Aktivität

Sep
 
 
 
Oct
 
 
 
Nov
 
 
 
Dec
 
Mon
Wed
Fri