Quelle est la différence entre une bibliothèque, un framework et une API? Ils me semblent tous pareils. J'aimerais entendre les gens penser à cela.
Quelle est la différence entre une bibliothèque, un framework et une API? Ils me semblent tous pareils. J'aimerais entendre les gens penser à cela.
Réponses:
Une bibliothèque est un ensemble de fonctions / objets servant un objectif particulier. vous pouvez utiliser une bibliothèque dans une variété de projets.
Un framework est une collection de patterns et de bibliothèques pour vous aider à construire une application.
Une API est une interface permettant aux autres programmes d’interagir avec votre programme sans accès direct.
En d'autres termes, considérez une bibliothèque comme un élément complémentaire d'une application, un framework comme un squelette de l'application et une API comme une partie extérieure de cette application.
Bonnes réponses jusqu'à présent, mais il leur manque un point essentiel: un cadre utilise IoC . Votre code est entouré d'un cadre. Il vit à l'intérieur. En revanche, votre code utilise simplement une bibliothèque ou une API. Il vit en dehors d'elle. IoC est la différence.
Une bibliothèque est une collection de code conçue pour effectuer des tâches courantes. Le code de la bibliothèque a tendance à être relativement stable et sans bug. L'utilisation de bibliothèques appropriées peut réduire la quantité de code à écrire. Il aura tendance à réduire le nombre de lignes de code pour une application, ce qui augmentera le taux de fourniture des fonctionnalités. Dans la plupart des cas, il est préférable d'utiliser une routine de bibliothèque plutôt que d'écrire votre propre code.
Une API (Application Programming Interface) est une interface avec certaines fonctionnalités qui permet à une application d'accéder aux fonctionnalités disponibles. Une API peut être appelée interface. Les API existent à plusieurs niveaux, y compris système, bibliothèque, infrastructure, programme et application. Les API doivent être définies avant que le code qui les implémente ne soit implémenté.
Les API doivent être stables, même si des parties de l’API peuvent être obsolètes pour diverses raisons. Plus l'API est largement utilisée, plus il est difficile de la changer. La plupart, sinon la totalité, de l'API Java 1.0 est toujours disponible, bien que de nombreuses méthodes soient obsolètes.
Un framework est un ensemble d'API conçues pour simplifier la construction d'applications. Les cadres fournissent des implémentations pour les composants réutilisables. Les bons cadres ont tendance à être spécialisés dans leur application.
Java Collections Framework est une collection d'API pour divers types d'objets pouvant être utilisés pour gérer des collections. Il fournit une hiérarchie d'API à différentes collections. Dans Java Collections Framework, l’interface SortedSet étend l’interface Set, qui à son tour étend l’interface Collection. Ces API sont des interfaces abstraites et les implémentations réelles portent des noms différents. Collections Framework simplifie la mise en œuvre des collections et simplifie les modifications d’implémentation au cours du développement.
Les cadres peuvent être construits à partir de structures plus petites, comme dans Java Spring Framework, destiné au développement J2EE. Spring se compose de plus d'une douzaine de cadres, dont beaucoup peuvent être utilisés seuls ou remplacés par d'autres.
L'utilisation des bibliothèques, des API et des frameworks appropriés peut simplifier le développement. Ces composants traitent les problèmes courants et permettent à l'équipe de développement de se concentrer sur les problèmes spécifiques à l'application.
Un framework est une avancée de la bibliothèque. Si votre boîte à outils est une bibliothèque, votre atelier sera un cadre.
Wikipedia dit
Une API est une abstraction qui décrit une interface pour l’interaction avec un ensemble de fonctions utilisées par les composants d’un système logiciel.
La distinction importante entre une API et une interface utilisateur réside dans le fait qu’une API permet à d’autres logiciels / services d’interagir par programme avec votre solution.
Les API peuvent être construites à la fois pour des applications (via des dll ou des plugins) ou des sites Web et des services (via REST et webservices)
Les API définissent comment utiliser autre chose en termes d'objets et de méthodes pouvant être utilisés à partir d'une source. Par exemple, l'intégration de Twitter ou Facebook dans un site utilise une API de Twitter ou Facebook pour garantir la mise à jour des données appropriées.
Les cadres ont tendance à être un peu plus volumineux dans la mesure où ils peuvent parfois former leur propre langage. jQuery est un exemple de framework qui a sa propre syntaxe et pèse un peu plus lourd pour entrer dans mon code dans un sens. Les frameworks peuvent également être des plates-formes qui les rendent similaires aux API en un sens. Par exemple, Win32API ou .Net Framework ont chacun de nombreuses méthodes pour créer une application. Il peut donc y avoir des frameworks contenant des API et des API également considérées comme des frameworks.
Les bibliothèques ont tendance à être des fichiers binaires qui implémentent une API ou une structure. Ce sont donc les bits qui vous obligent à utiliser une API ou une structure dans certains cas. Au moins c'est ainsi que je vois ces termes et leurs différences.
Allez dans une bibliothèque et commencez à lire des livres. Si vous êtes l'application, la collection de livres est la bibliothèque. Les étagères, les armoires et le composé qui abrite tout cela constituent le cadre. Tout ce que vous entrez en contact lors de la lecture des livres est l’API.
Une bibliothèque est une collection de code utilisée pour simplifier des tâches courantes. Il peut s'agir de classes, de fonctions ou de tout autre élément spécifique à votre langue ou à votre plate-forme. Un bon exemple pourrait être une bibliothèque de manipulation de chaînes fournissant des aides pour les tâches courantes (construction, division, recherche ou tri de chaînes, etc.).
Une API (interface de programmation d'application) est une définition ("interface") de la manière de travailler avec une autre application, système ou technologie. Il définit essentiellement les opérations disponibles pour interagir avec cet autre système. Une API peut être une bibliothèque (c’est-à-dire qu’elle est encapsulée dans une bibliothèque ou un ensemble de classes), à la différence qu’une API fait toujours référence à un système externe - qu’il s’agisse d’une base de données, d’un service Web, d’une autre application ou du système d’exploitation. lui-même.
Un Framework est un concept plus vaste - il contiendra normalement un certain nombre de bibliothèques et d’API pour effectuer des tâches courantes. Il existe à un niveau conceptuel supérieur - il ne s'agit pas simplement d'une collection d'outils, mais également d'une collection de modèles de conception, de meilleures pratiques et de méthodologies. Un framework logiciel est une extension d'un framework général . Son sens est notamment d'être une base à partir de laquelle les éléments sont construits, fournissant un support et une structure, et fournissant une orientation et une définition aux exigences.
L'application est développée à l'aide de bibliothèques basées sur un framework et communique via une API.
Si vous construisez une application, dites une application de traitement d'image en ligne,
Quand un appel arrive dans votre application
à la personne qui appelle
raisons pour lesquelles ils existent: