Wasn das?

Wolltet ihr schon immer mal den Unterschied zwischen einem Framework und einer Library wissen? Dann seid ihr hier genau richtig! In typischer Informatikmanier werden im unten eingebetteten Video von einem Inder die Begriffe Framework und Library systematisch voneinander abgegrenzt.

Dieser Unterschied ist wichtig, da Frameworks im produktiven Einsatz auf Librarys zurückgreifen können und durch ihre skelettartige Vorgabe eine halbfertige Applikation bilden.

Ah, alles klar

Der wesentliche Unterschied kann dabei durch die Präzisierung des Kontrollflusses (die Abarbeitungsreihenfolge von Anweisungen) erkannt werden. Die sogenannte Inversion of control (auch Hollywood-Prinzip genannt: „Don‘t call us, we call you!“) bedeutet, dass ein Modul, welches man selbst geschrieben hat, die Steuerung des Kontrollflusses an ein wiederverwendbares Modul abgibt.

Einfach gesagt wird dabei die Umkehr der Kontrolle erreicht. Man ruft keine wiederverwendbaren Module in einer Library auf sondern man gibt die Kontrolle des Aufrufs an ein wiederverwendbares Modul in einem Framework ab.

Let me know more!

Welche Vorteile ergeben sich dadurch? Zum einen wird das OpenClosed-Principle erfüllt (Module sollen offen für Erweiterungen – damit sind Vererbungen gemeint, die das Verhalten einer Einheit nicht verändern aber um zusätzliche Daten und Funktionen erweitern – und geschlossen für Modifikationen sein)1.

Dadurch, dass das Open-Closed-Principle erfüllt wird, steigt die Wandelbarkeit. Denn da der Aufruf der Reaktion und die Festlegung der Reaktion voneinander getrennt sind, muss die aufrufende Funktion bei der Änderung der Reaktion nicht auf das Ereignis angepasst werden.2

Ein weiterer Vorteil ist die Wiederverwendbarkeit der aufrufenden Funktion für eine andere Aufgabe. Es gibt auch Nachteile aber an dieser Stelle soll nur ein grober Überblick aufgezeigt werden.

Now, my IQ has risen

Wie man feststellt, ist der Unterschied zwischen Framework und Library ein tiefergehendes Thema. Wer sich nun für die angesprochene Thematik interessiert, kann sich folgendes Video anschauen. Hier wird der Zusammenhang mit einem kleinen Beispiel verdeutlicht.

1: https://de.wikipedia.org/wiki/Open-Closed-Prinzip
2: J. Goll; Entwurfsprinzipien und Konstruktionskonzepte der Softwaretechnik (2019), 2. Auflage

Author Thelarion
Published
Categories Programming
Views 60

Comments

No Comments

Schreibe einen Kommentar