Architecture logicielle Avancée pour développeurs Java

Inter-company training

Duration

 5,00 day(s)

Language(s) of service

EN FR

Who is organizing this training?

Dawan is a training organisation that offers more than 2000 training courses in IT, management, project management and sales in instructor-led live online or on-site trainings. We have 11 centres in France and we have developed partnerships with local structures in Brussels, Luxembourg and Geneva. Our catalogue includes hundreds of topics: Java, PHP, Webmaster, E-Marketing, Linux, Windows Server, Vmware, Autocad, Photoshop, IA etc. Our courses have been created and designed by in-house trainers who have over 20 years of teaching experience. Constantly renewed, they are adapted to the requirements of our customers and to the evolution of technologies.

Who is the training for?

Développeurs Java expérimentés, Architectes

Prerequisites

Expertise en développement Java Spring - Maîtrise de la programmation orientée objet et des concepts SOLID

Goals

  • Mettre en œuvre des architectures microservices, orientée évènements
  • Apprendre les différents anti-patterns d'architecture

Contents

Se rappeler des fondamentaux

Architecture logicielle: définition, documentation, vues architecturales
Démarche de production d'un dossier d'architecture technique
Panorama de composants logiciels et contraintes d'architecture
Styles d'architecture et organisation des couches d'une application

Concevoir une application basée sur les microservices

Décomposition fonctionnelle et Domain Driven Design
Exigences de conception des microservices: réactivité, compatibilité rétroactive, communication flexible, idempotency, fonctionnement efficace
La méthodologie à 12 facteurs
Structure d'un microservice, organisation des couches
Utilisation des évènements au sein d'un microservice

Atelier: Implémenter un micro-service avec Spring Boot, Web et Data JPA

Utiliser un message broker

Middleware Orienté Messages: intérêt, modes, protocoles
Architecture microservices orientée évènements
Panorama de messages brokers et comparaison

Atelier: Implémentation d'une architecture microservices orientée messages (producer/consumer) avec Spring AMQP ou JMS

Implémenter des WebSockets

WebSocket: le standard, intérêt et contextes d'utilisation
Schéma de communication des WebSockets
APIs disponibles

Atelier: Implémentation de web sockets avec Spring WebSocket et utilisation du protocole STOMP

Gérer efficacement des logs

Démarche globale de gestion des traces: support, type, quoi stocker
Interfaçage d'un microservice avec une solution de logs: ELK ou Graylog
Réflexion d'architecture: log direct, log via message broker, log direct vers fichier puis agrégation via un outil

Atelier: Configuration d'un microservice pour tracer en direct vers Elasticsearch, ou vers un message broker puis consommation via Logstash

Anti-patterns d'architecture logicielle

Anti-patterns: définition, détection
Panorama d'anti-patterns:

  • Autogenerated Stovepipe
  • Stovepipe Enterprise
  • Jumble
  • Stovepipe System
  • Cover Your Assets
  • Vendor Lock-In
  • Wolf Ticket
  • Architecture by Implication
  • Warm Bodies
  • Design by Committee
  • Swiss Army Knife
  • Reinvent the Wheel
  • The Grand Old Duke of York

Teaching methods

Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.

Evaluation

Contrôle continu

Certificate, diploma

Attestation de fin de stage mentionnant le résultat des acquis

Course material

Support de cours + sources des exercices

These courses might interest you

EN
Day
On request
Computer science - Data digitalisation