Unterschied Framework-API
-
Also wie bereits der Titel aussagt, würde ich gern erfahren, welche die Unterschiede zwischen Framework und einem Application Programming Interface ist.
-
API: http://de.wikipedia.org/wiki/Programmierschnittstelle
Framework: http://de.wikipedia.org/wiki/FrameworkMfG SideWinder
-
Habe ich es also richtig verstanden, dass ein Framework ein Gerüst um, zum Beispiel eine API, darstellt?
-
Ich würde eher sagen, dass der Unterschied in der Kontrolle liegt. Während du ein mit einer normalen API, nehmen wir z.B: eine x-beliebige Socket-API, du die Kontrolle behältst, ist es bei einem GUI Framework (z.B: MFC) genau umgekehrt. Du hast eigentlich keine Kontrolle über die exakte Ausführung und reagierst halt auf Events und dergleichen.
-
Eine API oder Schnittstelle sollte dafür sorgen, dass Code der die Schnittstelle benutzt unabhängig von dem Code ist, der die Funktionalität der Schnittstelle bereitstellt/implementiert.
Man kann auf beiden Seiten der Schnittstelle den Code austauschen, ohne dass hierzu Anpassungen auf der anderen Seite der Schnittstelle notwendig sind.Ein Framework ist dagegen so etwas wie ein Baukasten. Man kann die darin befindlichen Teile kopieren, verändern, erweitern, kombinieren, ... um so das gewünschte Programm zu erhalten.
Üblicherweise besitzt ein Framework eine API/Schnittstelle um den Code des Frameworks ändern zu können, ohne dass alle auf dem Framework aufbauenden Programme neu geschrieben werden müssen.Soweit die Theorie
(Die MFC ist ein Framework für komplette Programme und nicht nur für die Oberfläche.)