Belhassen OUESLATI belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 1 2 Vue d’
Belhassen OUESLATI belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 1 2 Vue d’ensemble Objectifs de la présentation: Décrire les concepts et les problèmes courants des applications Java/J2EE Aborder en douceur l’utilisation du conteneur Spring Architecture globale de Spring Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 3 Sommaire I-Problématiques des développements Java/J2EE Séparation des préoccupations (technique/ métier) Problèmes de productivité L’indépendance vis-à-vis de la plate-forme d’exécution Les tests II-Réponse de Spring La notion de conteneur léger Le conteneur EJB Le conteneur léger III-Architecture globale de Spring IV-Conclusion Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 4 I- Problématiques des développements Java/J2EE : Séparation des préoccupations (technique/ métier) : L’isolation des différentes problématiques qu’une application doit gérer : D’une part les problématiques techniques D’autre part les problématiques métier EJB : mais cette solution n’est pas suffisante pour isoler complètement le développement métier des Pb technique, Pourquoi? Car la conception même des composant métier est directement influencé par l’architecture technique Problèmes de productivité : J2EE est une plate-forme complexe à maîtriser La part des développements consacrés aux problématiques techniques étant disproportionnée par rapport à celle vouée aux problématiques fonctionnelles Utilisation des Framework spécialisés pour résoudre ces problématiques techniques 5 I- Problématiques des développements Java/J2EE (suite) : Problèmes de productivité (suite) : Pour parvenir à un niveau de productivité satisfaisante : Recours à plusieurs Frameworks Pb d’intégration de ces Framework Pb aux quels J2EE n’apporte aucune réponse L’indépendance vis-à-vis de la plate-forme d’exécution : J2EE se heurte à deux difficulté : La standardisation d’une technologie complexe Le choix d’une architecture exclusivement orientée serveur Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 6 I- Problématiques des développements Java/J2EE (suite) : Les tests : La problématique des tests est fondamentale dans tout développement d’application La difficulté de tester une application Java/J2EE selon une granularité plus fine nuit fortement à la qualité des applications En résumé : Face à ce constat, les concepteurs de Spring ont développé un Framework permettant d’adresser ces problématiques de manière efficace Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 7 II- Réponse de Spring : Pour résoudre les problèmes que nous venons d’évoquer : Des solutions ont émergé, en rupture avec les conteneurs J2EE disqualifiés par de nombreux experts pour leur lourdeur Apparition des conteneurs dits légers : Spring entre dans cette catégorie de solutions. La notion de conteneur léger : Le conteneur EJB : Une technologie lourde à mettre en œuvre Le code est intrusive Technologie dépendante du serveur d’applications Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 8 II- Réponse de Spring (suite) : La notion de conteneur léger (suite) : Le conteneur léger : Le conteneur léger permet de fournir une infrastructure de gestion de l’ensemble des composants de l’application, a travers les mécanismes de configuration, comme les fichiers XML. Il permet : L’initialisation des composants Gestion du cycle de vie des composants Gestion des dépendances entre les composants Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 9 II- Réponse de spring (suite) : La notion de conteneur léger (suite) : Le conteneur léger : L’indépendance vis-à-vis de la plate forme d’exécution ( Pb résolu) : Les conteneurs légers sont indépendants de la technologie J2EE Les conteneurs légers peuvent fonctionner sur tout type de serveur d’applications, voire sans eux en utilisant une simple machine virtuelle Java (JVM) (utilisation du spring contexte) Les tests (Pb résolu ) : Les conteneurs légers rendent les applications qui les utilisent à la fois plus flexibles et mieux testables : Le couplage entre les composants est géré par le conteneur, et non plus directement à l’intérieur du code L’utilisation intensive d’interfaces qui rend l’application indépendante de leurs implémentations Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 10 III-Architecture globale de Spring : Voici une illustration des différentes briques constituant l’architecture de Spring, ainsi que les principaux Framework tiers (représentés en pointillés) dont elles assurent l’intégration. Architecture de Spring Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 11 III-Architecture globale de Spring (suite) : Spring repose sur un socle technique constitué des modules : Spring Core, le conteneur léger Springs AOP, le framework de POA Sur ce socle sont construits des modules de plus haut niveau destinés à intégrer des frameworks tiers. Ces modules sont les suivants : Modules d’intégration de la persistance des données : Spring DAO : L’abstraction de la notion d’objets d’accès aux données Spring ORM : L’intégration de frameworks de persistance Spring JDBC : Simplifier l’utilisation de JDBC Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 12 III-Architecture globale de Spring (suite) : Module de gestion de contexte applicatif (Spring Context): Spring Context : assure le dialogue entre Spring et l’application, indépendamment de la plate-forme technique sur laquelle fonctionne cette dernière.(au sein d’un serveur d’applications, d’une simple JVM,etc.) Module d’intégration de frameworks Web (Spring Web): Spring Web : supporte les principaux frameworks Open Source du marché. Spring propose en outre son propre framework Web, conçu sur le modèle MVC, sous le nom de Spring MVC Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 13 Conclusion Springs est une solution élégante qui répond à un ensemble de problématiques essentielles des développements Java/J2EE : La flexibilité du code L’intégration de frameworks tiers L’implémentation des meilleures pratiques de programmation Du fait de son indépendance vis-à-vis de la plate-forme J2EE, il est utilisable sur tout type de développement Java reposant sur J2SE. Il convient aussi bien aux applications de type Web (grâce à Spring MVC ou à son intégration des principaux frameworks MVC) Belhassen.oueslati@gmail.com TIME UNIVERSITY-2012 uploads/Ingenierie_Lourd/ gl3-framework-spring-partie-1.pdf
Documents similaires
-
15
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mar 21, 2022
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 0.3314MB