Un framework web ( WF ), un framework d'application web ( WAF ) ou un framework de développement web est un ensemble de logiciels conçu pour faciliter le développement d' applications web, notamment les services web, les ressources web et les API web . Les frameworks web offrent une méthode standardisée pour créer et déployer des applications web sur le World Wide Web . Ils visent à automatiser les tâches courantes liées au développement web . Par exemple, de nombreux frameworks web fournissent des bibliothèques pour l'accès aux bases de données , des systèmes de modèles et la gestion des sessions , et favorisent souvent la réutilisation du code . Bien qu'ils soient généralement destinés au développement de sites web dynamiques , ils sont également applicables aux sites web statiques .
Cadre Web
Un framework web ( WF ), un framework d'application web ( WAF ) ou un framework de développement web est un ensemble de logiciels conçu pour faciliter le développement d' applic...
Côté client
Mise en cache
Certains frameworks web intègrent des systèmes d'authentification et d'autorisation permettant au serveur web d'identifier les utilisateurs de l'application et de restreindre l'accès aux fonctionnalités selon des critères définis. Drupal , par exemple, propose un contrôle d'accès aux pages basé sur les rôles et offre une interface web pour la création d'utilisateurs et l'attribution de rôles.
Accès aux bases de données, mappage et configuration
De nombreux frameworks web créent une API unifiée pour la base de données, permettant aux applications web de fonctionner avec diverses bases de données sans modification de code et aux développeurs de se concentrer sur des concepts de plus haut niveau. De plus, certains frameworks orientés objet intègrent des outils de mappage pour assurer le mappage objet-relationnel , qui associe des objets à des tuples .
Certains frameworks minimisent la configuration des applications web grâce à l' introspection et/ou au respect de conventions établies. Par exemple, de nombreux frameworks Java utilisent Hibernate comme couche de persistance, capable de générer à l'exécution un schéma de base de données permettant de conserver les informations nécessaires. Le concepteur d'applications peut ainsi concevoir des objets métier sans avoir à définir explicitement un schéma de base de données. Des frameworks tels que Ruby on Rails peuvent également fonctionner en sens inverse, c'est-à-dire définir à l'exécution les propriétés des objets du modèle à partir d'un schéma de base de données.
D'autres fonctionnalités que les frameworks web peuvent fournir incluent la prise en charge transactionnelle et les outils de migration de bases de données .
mappage d'URL
Ajax , abréviation de « JavaScript asynchrone et XML », est une technique de développement web permettant de créer des applications web. Son objectif est d'améliorer la réactivité des pages web en échangeant de petites quantités de données avec le serveur en arrière-plan, évitant ainsi le rechargement complet de la page à chaque requête de l'utilisateur. Ceci vise à accroître l'interactivité, la vitesse, la maintenabilité et l'ergonomie d'une page web .
En raison de la complexité de la programmation Ajax en JavaScript, de nombreux frameworks Ajax sont dédiés à la prise en charge d'Ajax. Certains sont même intégrés à des frameworks plus vastes. Par exemple, la bibliothèque JavaScript jQuery est incluse dans Ruby on Rails.
Face à l'intérêt croissant pour le développement d'applications web riches « Web 2.0 » , la complexité de la programmation directe en Ajax et JavaScript est devenue si manifeste que les compilateurs ont émergé, permettant aux développeurs de coder dans des langages de haut niveau tels que Java, Python et Ruby. Le premier de ces compilateurs fut Morfik , suivi de Google Web Toolkit , puis de versions pour Python et Ruby sous les noms de Pyjs et RubyJS. Ces compilateurs et leurs bibliothèques de widgets associées rendent le développement d'applications Ajax riches en contenu beaucoup plus proche de celui des applications de bureau.
Services Web
Un certain nombre de frameworks RESTful Web 2.0 plus récents fournissent désormais une infrastructure d'architecture orientée ressources (ROA) pour la construction de collections de ressources dans une sorte d' ontologie Web sémantique , basée sur des concepts du Resource Description Framework (RDF).