48 Stimmen

Rahmenwerk vs. API

Dies mag eine dumme Frage sein, aber manchmal werden die Begriffe Framework und API synonym verwendet. So wie ich es sehe, ist ein Framework eine größere, allgemeinere Sache, die viele APIs enthält und für verschiedene Programmieraufgaben verwendet werden kann (z. B. das .NET Framework). Eine API ist kleiner und spezieller (z. B. die Facebook-API).

Und nehmen wir zum Beispiel an, dass Microsoft .NET als Framework bezeichnet, während Sun seine als Plattform bezeichnet ... könnte es also auch eine Geschäfts-/Marketingentscheidung sein, wie man eine "Sammlung von Bibliotheken" bezeichnet?

5voto

Naeem Akram Punkte 51
  • Software-Rahmenwerk: Ist ein wiederverwendbarer Entwurf für ein Softwaresystem (oder -subsystem). Ein Software-Framework kann Programme, Code-Bibliotheken, eine Skriptsprache und andere Software enthalten, die bei der Entwicklung und beim Zusammenfügen der verschiedenen Komponenten eines Softwareprojekts helfen. Verschiedene Teile des Frameworks können über eine API zugänglich sein.

  • API (Anwendungsprogrammierschnittstelle): Ist ein Satz von Routinen (auch Methoden, Funktionen), Datenstrukturen, Objektklassen und/oder Protokollen, die von Bibliotheken und/oder Betriebssystemdiensten zur Verfügung gestellt werden, um die Erstellung von Anwendungen zu unterstützen.
    Weitere Details und andere Link zu diesem speziellen Thema ist http://aprogrammersday.blogspot.com/2009/02/difference-between-framework-and-api.html

4voto

HISI Punkte 4139

API (application programming interface): wie der Name schon sagt, ist es eine Schnittstelle für externe Programme, um mit Ihrem Programm oder Ihrer Bibliothek zu interagieren, ohne direkten Zugriff zu haben. z.B. die Google Map API und Facebook API geben Ihnen die Schnittstelle, um mit ihrem Programm und ihrer Bibliothek zu interagieren, ohne direkten Zugriff zu haben.

Auf der anderen Seite:

Rahmenwerk Sie können sich das Framework als ein "Skelett" vorstellen, bei dem die Anwendung das "Fleisch" definiert. Sie können also kein menschliches Skelett nehmen, um einen Pferdekörper zu bauen, also müssen Sie ein gutes Framework auswählen, bevor Sie mit dem Programmieren beginnen: Sie rufen die Bibliothek an. Framework ruft Sie auf.

2voto

Rad Punkte 8279

Ich würde gerne glauben, dass eine API eine Teilmenge eines Rahmens ist.

2voto

Bill Karwin Punkte 493880

Meiner Erfahrung nach bietet ein Framework oft (mindestens) zwei Dinge, die eine einfache API nicht bietet:

  • Erweiterbarkeit: Sie können Komponenten des Frameworks zusammenstellen oder unterklassifizieren, um seine Funktionalität zu erweitern oder anzupassen.

  • Werkzeuge für die Codegenerierung, Verwaltung oder Diagnoseaufgaben im Zusammenhang mit der Anwendungsentwicklung.

1voto

Hampden123 Punkte 1228

Ich weiß, dass dies ein altes Thema ist und dass es eigentlich keine Rolle spielt, aber ich kann einfach nicht anders, als mich mit meinen eigenen Ansichten einzubringen. Eine API (z. B. Gerätetreiber-API, Windows-API usw.) stellt die grundlegenden und wesentlichen Funktionen für eine Plattform bereit, so dass ein Programmierer seine Kreativität ausleben und etwas mit der Plattform anstellen kann - ja, einschließlich der Verwendung zur Erstellung eines Frameworks. Ein Framework hat eine höhere Funktions- und Abstraktionsebene und bietet eine Reihe von wiederverwendbaren und praktischen Funktionen/Klassen/Konventionen, um die Entwicklung von Anwendungen zu erleichtern, die bestimmte gemeinsame Attribute aufweisen (z. B. iPad-Anwendungen, Webdienste usw.).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X