Framework web
Cet article est incomplet.
Il est jugé trop incomplet dans son développement ou dans l'expression des concepts et des idées. Son contenu est donc à considérer avec précaution.
Introduction
Il existe de nombreux outils logiciels informatiques permettant de développer rapidement et efficacement des applications web enrichies (RIA, Rich Internet Application). Parmi eux, on retiendra deux grandes catégories (excepté les serveurs applicatifs) :
- les CMS (content management system, Système de gestion de contenu) permettant la création de site disposant surtout d'un contenu journalistique si l'on peut dire
- les frameworks web ou plateformes applicatives.
Définition
D'une manière générale, un framework est un espace de travail modulaire, constitué d'un ensemble de bibliothèques, d'outils et de conventions permettant le développement rapide d'application (wikipedia, framework). Il fournit aussi une structure pour l'application. Par extension, un framework web est un ensemble d'outils spécialisés pour le développement d'applications web.
Avantages et inconvénients
Tout dépend du type et de l'envergure de l'application web que l'on veut réaliser. Pour un petit site statique, une simple connaissance du html peut suffire. Par contre, si par exemple, on veut créer une plateforme web pour le e-learning et se passer pour des raisons qui nous appartiennent des services de moodle ou dokeos, l'utilisation de ce type d'outil sera bienvenue. Il en est de même pour tout autre application web de grande envergure car un framework est une sorte de boite à outils regroupant des macro-ingrédients pour la réalisation du projet. On peut prendre la métaphore du cuisinier. En somme, c'est comme si vous aviez déjà à disposition les parties importantes pour réaliser une recette de cuisine. Des 'morceaux' déjà prêt de cette recette, adaptables à volonté; Par exemple, pour réaliser une tarte quelconque, vous avez déjà la patte toute prête, que vous pouvez adapter, à volonté, pour deux, quatre, dix personnes.
Ainsi, liberté, rapidité, qualité, cohérence et pérennité sont les avantages de l'utilisation de ces plateformes applicatives.
Cohérence et pérennité sont deux atouts essentiels : L'utilisation de la plateforme vous impose une certaine structure pour votre l'application qui de ce fait vous garantie une maintenance et une mise à jour facilitée.
L'inconvénient d'un tel outil est ce que j'appelle 'le ticket d'entrée'. En effet, l'apprentissage de la plateforme est plus ou moins long et fastidieux. Tous ne sont en plus pas aussi bien documentés que le framework php symfony par exemple. Aussi, l'apprentissage de l'outil est un élément très important à intégrer dans le développement du projet. La rapidité de développement du projet va dépendre de la bonne connaissance de l'outil.
Critères de choix
Pas de bon ou mauvais choix à priori parmi les outils les plus populaires du marché comme l'illustre ce comparatif de framework php, ou celui ci plus réflexif. La documentation et le ticket d'entrée sont des critères de choix importants, mais le type du projet, ses implications et la maitrise préalable ou non du framework sont aussi des éléments à ne pas négliger.
Exemples et tutoriels
- Ruby On Rails, RoR est un framework web libre, écrit en ruby et suivant le motif de conception MVC (Modèle Vue Controleur).
tutoriel : Gestion très simple d'un carnet d adresse
- Symfony comme RoR, Symfony est basé sur le motif de conception MVC et utilise une couche d'abstraction d'accès aux données et d'implémentation AJAX. Il est développé en PHP5
tutoriel : une petite application de gestion de weblog
- Django le framework web python pour les perfectionnistes sous pression.
tutoriel : bien debuter avec django
tutoriel et presentation : présentation de flex
- sans oublier le couple html/ajax, et en particulier l'api javascript Librairie Javascript Ext JS 2.0, une des meilleures aujourd'hui pour faire du web 2.0 selon moi.
Références et liens
définition et avantages d'un framework web
critères de choix d'un framework PHP
du choix d'un framework web...
appredre symfony : un tutoriel pour débutant (EN)
flex 2, adobe se met aux interfaces très riches
Librairie Javascript Ext JS 2.0 simplement la meilleure...
Notes de version
Dernière modification :--Smalandain 14 novembre 2007 à 23:06 (CET)