Je veux quelques exemples. Je suis toujours confus, donc avec quelques exemples, je pourrais peut-être mieux le comprendre.
Aussi: Eclipse est-il une API ou un IDE?
api
frameworks
sdk
ide
terminology
Manoj hans
la source
la source
Réponses:
Un IDE est un environnement de développement intégré - un éditeur de texte amélioré avec une prise en charge supplémentaire pour le développement (comme les concepteurs de formulaires, les éditeurs de ressources, etc.), la compilation et le débogage des applications. par exemple Eclipse, Visual Studio.
Une bibliothèque est un morceau de code que vous pouvez appeler à partir de votre propre code, pour vous aider à faire les choses plus rapidement / facilement. Par exemple, une bibliothèque de traitement Bitmap fournira des installations pour charger et manipuler des images bitmap, vous évitant d'avoir à écrire tout ce code pour vous-même. En règle générale, une bibliothèque n'offre qu'un seul domaine de fonctionnalité (traitement d'images ou fonctionnement sur des fichiers zip)
Une API (interface de programmation d'application) est un terme désignant les fonctions / méthodes d'une bibliothèque que vous pouvez appeler pour lui demander de faire des choses pour vous - l'interface avec la bibliothèque.
Un SDK (kit de développement logiciel) est une bibliothèque ou un groupe de bibliothèques (souvent avec des applications d'outils supplémentaires, des fichiers de données et des exemples de code) qui vous aident à développer du code qui utilise un système particulier (par exemple, un code d'extension pour utiliser les fonctionnalités d'un système d'exploitation ( Windows SDK), dessiner des graphiques 3D via un système particulier (DirectX SDK), écrire des compléments pour étendre d'autres applications (Office SDK) ou écrire du code pour qu'un appareil comme un Arduino ou un téléphone mobile fasse ce que vous voulez). Un SDK aura toujours généralement un seul focus.
Une boîte à outils est comme un SDK - c'est un groupe d'outils (et souvent des bibliothèques de code) que vous pouvez utiliser pour faciliter l'accès à un périphérique ou un système ... Bien que peut-être plus axé sur la fourniture d'outils et d'applications que sur de simples bibliothèques de code .
Un framework est une grande bibliothèque ou un groupe de bibliothèques qui fournit de nombreux services (plutôt qu'une seule capacité focalisée comme le font la plupart des bibliothèques / SDK). Par exemple, .NET fournit un cadre d'application - il facilite l'utilisation de la plupart (sinon de la totalité) des services disparates dont vous avez besoin (par exemple, Windows, graphiques, impression, communications, etc.) pour écrire une vaste gamme d'applications. "library" fournit un support pour à peu près tout ce que vous devez faire. Souvent, un framework fournit une base complète sur laquelle vous construisez votre propre code, plutôt que de créer une application qui consomme du code de bibliothèque pour effectuer une partie de son travail.
Il existe bien sûr de nombreux exemples dans la nature qui ne correspondent pas exactement à ces descriptions.
la source
L'analogie de la voiture
IDE: Le MS Office of Programming. C'est là que vous tapez votre code, ainsi que des fonctionnalités supplémentaires pour faire de vous un programmeur plus heureux. (par exemple Eclipse, Netbeans ). Carrosserie: c'est ce que vous touchez, voyez et travaillez vraiment.
Bibliothèque: Une bibliothèque est un ensemble de fonctions, souvent regroupées en plusieurs fichiers programme, mais regroupées dans un seul fichier d'archive. Cela contient des programmes créés par d'autres personnes, pour que vous n'ayez pas à réinventer la roue. (par exemple junit.jar, log4j.jar ). Une bibliothèque a généralement un rôle clé, mais fait tout son travail dans les coulisses, elle n'a pas d'interface graphique. Moteur de la voiture.
API: documentation de l'éditeur de la bibliothèque. C'est ainsi que vous devez utiliser ma bibliothèque. (par exemple , API log4j, API junit ). Manuel d'utilisation de la voiture - oui, les voitures en viennent aussi avec un!
Des kits
Qu'est-ce qu'un kit? C'est une collection de nombreux éléments connexes qui fonctionnent ensemble pour fournir un service spécifique. Quand quelqu'un dit kit de médicaments, vous obtenez tout ce dont vous avez besoin en cas d'urgence: emplâtres, aspirine, gaze et antiseptique, etc.
SDK : Happy Meal de McDonald . Vous avez tout ce dont vous avez besoin (et dont vous n'avez pas besoin) soigneusement emballé: plat principal, boisson, dessert et un jouet bonus. Un SDK est un ensemble de composants logiciels différents assemblés dans un package, de sorte qu'ils sont «prêts à l'emploi» dès la sortie de la boîte. Il comprend souvent plusieurs bibliothèques et peut , mais pas nécessairement, inclure des plugins, de la documentation d'API, même un IDE lui-même. (par exemple , kit de développement iOS ).
Boîte à outils : GUI. GUI. GUI. Lorsque vous entendez «boîte à outils» dans un contexte de programmation, cela se réfère souvent à un ensemble de bibliothèques destinées au développement de l'interface graphique. Étant donné que les boîtes à outils sont centrées sur l'interface utilisateur, elles sont souvent fournies avec des plugins (ou des IDE autonomes) qui fournissent des utilitaires de peinture d'écran. (par exemple GWT )
Cadre : Bien que ce ne soit pas la notion courante, un cadre peut être considéré comme un kit. Il a également une bibliothèque (ou une collection de bibliothèques qui fonctionnent ensemble) qui fournit une structure et un modèle de codage spécifiques (donc le mot, framework ). (par exemple Spring Framework)
la source
Considérez le développement Android:
IDE: Eclipse etc.
Bibliothèque: bibliothèque android.app.Activity (classe avec tout le code)
API: interface essentiellement toutes les fonctions avec lesquelles nous appelons
SDK: le SDK Android vous fournit les bibliothèques d'API et les outils de développement nécessaires pour créer, tester et déboguer des applications pour Android (---- outils - DDMS, émulateur ---- plates-formes - versions du système d'exploitation Android, ---- plate-forme- outils - ADB, ---- API docs)
ToolKit: pourrait être un bundle ADT
Framework: grande bibliothèque mais plus orientée architecture
la source
En d'autres termes...
IDE Même votre bloc-notes est un IDE. Chaque logiciel avec lequel vous écrivez / compilez du code est un IDE.
Bibliothèque Un tas de code qui simplifie les fonctions / méthodes pour une utilisation rapide.
API Une interface de programmation pour les fonctions / configuration avec lesquelles vous travaillez, son utilisation est souvent documentée.
SDK Extras et / ou à des fins de développement / test.
ToolKit Tiny apps pour une utilisation rapide, souvent des interfaces graphiques.
Les applications GUI avec une interface graphique, ne nécessitent aucune connaissance de la programmation contrairement aux API.
Framework Bunch of APIs / énorme bibliothèque / Snippets enveloppés dans un espace de noms / ou encapsulés à partir de la portée externe pour une gestion compacte sans conflits avec d'autres codes.
MVC Un modèle de conception séparé en modèles, vues et contrôleurs pour de grandes applications. Ils ne sont pas dépendants les uns des autres et peuvent être modifiés / améliorés / remplacés sans prendre en charge d'autres codes.
Exemple:
Snippets De petits codes de seulement quelques lignes, peuvent ne pas être même complets mais valent la peine d'être partagés rapidement.
Plug-ins Fonctions exclusives pour les frameworks / API / bibliothèques spécifiés uniquement.
Modules complémentaires Modules ou services supplémentaires pour des interfaces graphiques spécifiques.
la source
SDK représente un kit de développement logiciel, et IDE représente un environnement de développement intégré. L'IDE est le logiciel ou le programme est utilisé pour écrire, compiler, exécuter et déboguer comme Xcode. Le SDK est le moteur sous-jacent de l'EDI, comprend toutes les bibliothèques de la plate-forme auxquelles une application doit accéder. C'est plus basique qu'un IDE car il n'a généralement pas d'outils graphiques.
la source