Un framework, ou cadre logiciel, est une plateforme de développement d’applications logicielles. Il fournit une base sur laquelle les développeurs de logiciels peuvent construire des programmes pour une plate-forme spécifique. Par exemple, un framework peut inclure des classes et des fonctions prédéfinies qui peuvent être utilisées pour traiter les entrées, gérer les périphériques matériels et interagir avec le logiciel système. Cela permet de rationaliser le processus de développement puisque les programmeurs n’ont pas besoin de réinventer la roue à chaque fois qu’ils développent une nouvelle application.
Un framework est similaire à une interface de programmation d’applications (API), bien que techniquement, un framework inclut une API. Comme son nom l’indique, un framework sert de base à la programmation, tandis qu’une API permet d’accéder aux éléments pris en charge par le framework. Un framework peut également inclure des bibliothèques de code, un compilateur et d’autres programmes utilisés dans le processus de développement de logiciels.
Plusieurs types de frameworks logiciels existent. Parmi les exemples populaires, citons ActiveX et .NET pour le développement Windows, Cocoa pour Mac OS X, Cocoa Touch pour iOS et le cadre d’application Android pour Android. Des kits de développement logiciel (SDK) sont disponibles pour chacun de ces cadres et comprennent des outils de programmation conçus spécifiquement pour le cadre correspondant. Par exemple, le logiciel de développement Xcode d’Apple comprend un SDK Mac OS X conçu pour écrire et compiler des applications pour le framework Cocoa.
Dans de nombreux cas, un framework logiciel est pris en charge nativement par un système d’exploitation. Par exemple, un programme écrit pour le cadre d’application Android fonctionnera sur un appareil Android sans nécessiter l’installation d’autres fichiers supplémentaires. Cependant, certaines applications nécessitent un cadre spécifique pour fonctionner. Par exemple, un programme Windows peut nécessiter Microsoft .NET Framework 4.0, qui n’est pas installé sur toutes les machines Windows (en particulier les PC exécutant des versions plus anciennes de Windows). Dans ce cas, le paquet d’installation Microsoft .NET Framework 4 doit être installé pour que le programme puisse s’exécuter.
NOTE : Si les frameworks font généralement référence à de vastes plates-formes de développement logiciel, le terme peut également être utilisé pour décrire un framework spécifique dans un environnement de programmation plus large. Par exemple, plusieurs frameworks Java, tels que Spring, ZK et le Java Collections Framework (JCF) peuvent être utilisés pour créer des programmes Java. En outre, Apple a créé plusieurs frameworks spécifiques auxquels les programmes OS X peuvent accéder. Ces frameworks sont enregistrés avec une extension de fichier .FRAMEWORK et sont installés dans le répertoire /System/Library/Frameworks. Parmi les exemples de frameworks OS X figurent AddressBook.framework, CoreAudio.framework, CoreText.framework et QuickTime.framework.
Mise à jour : 7 mars 2013