- Atelier de développement
-
Framework
En informatique, un framework est un ensemble de bibliothèques, d'outils et de conventions permettant le développement d'applications. Il fournit suffisamment de briques logicielles et impose suffisamment de rigueur pour pouvoir produire une application aboutie et dont la maintenance est aisée. Ces composants sont organisés pour être utilisés en interaction les uns avec les autres (voir urbanisation).
Des tentatives de francisation du terme ont été faites. On trouve ainsi parfois les termes cadre d'applications, proposé par l'Office québécois de la langue française[1] ou cadriciel[2]. L'expression atelier de développement est également employée.
Sommaire
Description
Un framework fournit un ensemble de fonctions facilitant la création de tout ou d'une partie d'un système logiciel, ainsi qu'un guide architectural en divisant le domaine visé en modules. Un framework est habituellement implémenté à l'aide d'un langage à objets, bien que cela ne soit pas strictement nécessaire : un framework objet fournit ainsi un guide architectural en divisant le domaine visé en classes et en définissant les responsabilités de chacune ainsi que les collaborations entre classes. Ces classes peuvent être subdivisées en classes abstraites.
Le déploiement à grande échelle de bibliothèques d'objets exige un framework ; celui-ci fournit un contexte où les composants sont ré-utilisés.
Si l'utilisation du terme bibliothèque est limitée à l'ensemble des fonctions du système, le terme de framework peut être employé par extension pour inclure également l'architecture logicielle préconisée pour cette bibliothèque (organisation en couches, utilisation du modèle MVC, etc), voire l'environnement de développement bâti autour (Microsoft .NET + Visual Studio, etc) même si celui-ci est capable de gérer différents frameworks.
On trouve différents types de frameworks :
- Framework d'infrastructure système : pour développer des systèmes d'exploitation, des interfaces graphiques, des outils de communication. (exemple : Framework .Net, Eclipse, NetBeans, Struts)
- Framework d'intégration intergicielle (middleware) : pour fédérer des applications hétérogènes. Pour mettre à dispositions différentes technologies sous la forme d'une interface unique. (exemple : Ampoliros avec ses interfaces RPC, SOAP, XML)
- Frameworks d'entreprise : pour développer des applications spécifiques au secteur d'activité de l'entreprise.
- Frameworks orientés Système de gestion de contenu
Les principaux avantages de ces frameworks sont la réutilisation de leur code, la standardisation du cycle de vie du logiciel (Spécification, développement, maintenance, évolution), ils permettent de formaliser une architecture adaptée au besoin de l'entreprise. Ils tirent parti de l'expérience des développements antérieurs.
Ces frameworks sont en quelque sorte des progiciels extrêmement souples et évolutifs.
Exemples de frameworks
Les frameworks peuvent être classés selon le langage ou leur utilisation (OS, web, multimédia)
Article connexe : Liste de frameworks PHP.Article connexe : Liste de frameworks Java.Article connexe : Liste de frameworks .NET.Article connexe : Liste de frameworks Python.Article connexe : Liste de frameworks JavaScript.Article connexe : Bibliothèque logicielle.- window Delphi VCL,Component Object Model, MFC, Win32, Microsoft .NET
- ActionScript Foundry — un framework Flex open source écrit en ActionScript 3 et Java
- Apache Cocoon — un environnement servlet de développement JAVA/XML pour le web, fondation Apache Software
- Apache Struts — de la fondation Apache Software
- Catalyst (logiciel) — framework web open source écrit en langage de programmation Perl
- Cocoa — de la société Apple
- Django — framework web open source écrit en langage de programmation Python
- Dojo — développement rapide d'applications en Javascript exécutées côté client et communiquant avec le serveur avec une granularité inférieure à la page grâce à AJAX.
- FxEngine Framework — un framework C++ open source pour le traitement de flux de données et le design de systèmes dynamiques utilisant des plugins.
- Grails — un framework web open source écrit en Groovy
- Hoa Framework — framework PHP 5 léger, moderne et complet.
- Jelix — framework PHP5 moderne, Il propose : MVC, templates, générateurs de sorties (HTML, XUL…), services web (xml-rpc, json-rpc), authentification, gestion de droits, localisation etc.
- Maarch — un framework open source pour la gestion de documents et l'archivage écrit en PHP5
- JQuery — c'est un framework Javascript libre qui porte sur l'interaction entre JavaScript (comprenant AJAX) et HTML, et a pour but de simplifier des commandes communes de JavaScript.
- MARF — un framework Java open source pour le traitement d'audio du MARF Research and Development Group
- Microsoft .NET — de la société Microsoft
- Microsoft XNA — framework de jeu vidéo écrit en C#. Il permet le développement d'application pour plateformes Xbox 360 & PC
- MIReG — framework de métadonnées de l'Union européenne
- Nuxeo — framework et plateforme de gestion de contenu d'entreprise
- Ruby on Rails — un framework web open source écrit en langage de programmation Ruby
- Rialto — (Rich Internet Application Toolkit) framework web open source de développement d'applications en Javascript côté client orienté vers les applications de gestion (licence Apache).
- Seaside — un framework web open source écrit en Smalltalk
- Symfony — un framework web open source écrit en PHP version 5
- codeIgniter — un framework web open source écrit en PHP version 4 et 5
- TurboGears — un framework web open source écrit en langage de programmation Python
- Zope — un framework web open source écrit en langage de programmation Python
- EvolanFramework — framework d'application bancaires web J2EE. Il permet le développement complet d'un IHM d'application bancaire de grande envergure uniquement à partir de descriptions XML. Ce Framework est la propriété de SopraGroup. Voir la gamme de produit éponyme Evolan.
- Zend Framework — un framework web open source composé de nombreuses bibliothèques PHP.
- Indigo Framework — un framework basé sur IOC (injection de contrôle) open source pour Flash, Flex et AIR.
- MagixcjQuery — un framework web open source écrit en PHP 5
- Salamanca_(.NET) — un framework Software_factory open source écrit en C#. Il permet l'industrialisation de développement d'applications métier.
Notes et référence
- ↑ Fiche terminologique de l'Office québécois de la langue française
- ↑ terme en usage depuis au moins 1997[réf. nécessaire]
Voir aussi
Articles connexes
- Liste de frameworks PHP
- Liste de frameworks Java
- Liste de systèmes de gestion de contenu#Frameworks orientés gestion de contenu (CMS: Système de gestion de contenu)
Liens externes
- Portail de la programmation informatique
- Portail de l’informatique
Catégorie : Environnement de développement intégré
Wikimedia Foundation. 2010.