Description
Au cours de cette formation, vous découvrirez les principaux frameworks et API de l'écosystème Java. Vous apprendrez à choisir les outils les plus adaptés à vos besoins et à exploiter leur potentiel pour améliorer vos développements. Cette formation vous permettra de mieux comprendre les différentes technologies Java et de les intégrer efficacement dans vos projets.
À qui s'adresse cette formation ?
Pour qui ?
Chefs de projet, architectes, analystes, concepteursdéveloppeurs désirant comprendre les enjeux du développement d'applications dans l'écosystème Java.
Prérequis
Connaissances de base en développement Java.
Les objectifs de la formation
- Découvrir l'architecture des applications Java EE
- Comprendre l'intérêt d'un serveur d'applications
- Découvrir les principaux Frameworks Java EE (présentation, service, persistance, métier)
Programme de la formation
- Introduction à l’écosystème Java
- Les paradigmes de programmation : objet, déclaratif, fonctionnel.
- Les langages : Java, Kotlin, Scala, Groovy, Clojure, etc. L'environnement d'exécution : la JVM.
- Le socle technique (Java SE) complété par des librairies.
- La spécification pour les applications d'entreprise (Java EE - Jakarta EE) et des frameworks.
- Les outils de build : Maven, Graddle.
- Principes de conception d'applications modernes
- Les objectifs : évolutivité, productivité, testabilité, résilience, scalabilité.
- L'architecture monolithique ou architecture micro-services.
- L'accès aux données (blocage et réactivité). - Les transactions : consistance forte et consistance finale. - L'architecture stateless.
- La séparation entre les commandes et les requêtes (CQRS). - L'application cloud ready, 12 factors.
- La gestion des composants d'une application
- Le cycle de vie.
- L'injection de dépendances.
- Les interceptions.
- Les API et frameworks : CDI, Spring.
- L'accès aux données
- Les accès aux bases relationnelles.
- Les bases nosql.
- La persistance polyglotte.
- Le traitement distribué.
- Les API et frameworks : JDBC, R2DBC, JPA, Spring Data, Hadoop.
- Les nouveaux protocoles d'HTML5 (WebSocket, SSE).
- L'échange de messages
- Les files d'attente ("queues").
- Les listes de diffusion (topic).
- Les API et frameworks : AMQP, STOMP, JMS, Kafka.
- Le web
- Exposer des opérations avec SOAP.
- Exposer des ressources avec REST.
- Exposer des pages avec les patterns MVC et MVP.
- API et frameworks : Spring MVC, JAX-RS, JSF.
- La sécurité
- Le standard OpenID Connect.
- L'authentification par token, par cookie.
- Les protections contre les attaques XSS et CSRF.
- Livrables et déploiement
- Le principe des applications autoportées.
- La compilation "just in time", "ahead of time" et "native".
- La présentation de GraalVM.
- L'exécution servlerless.
- La gestion de configuration.
- La containerization avec Docker, CRI-O.
- L'orchestration avec Kubernetes.
- La surveillance d'une application en production.
