OXiane est le partenaire formation de Devoxx : la conférence des développeurs passionnés
9ème édition
Le 30 juin 2020 – Formation (La Défense)
+ du 1er au 3 juillet 2020 – Conférences (Palais des Congrès Paris – Porte Maillot)
Mise à jour 23/04/2020 :
Suite aux dernières annonces du gouvernement face à la crise sanitaire liée au coronavirus, les organisateurs de Devoxx France ont décidé d’annuler l’édition 2020 prévue du 1er au 3 juillet.
La journée de formation étant partie intégrante du parcours proposé par OXiane, nous sommes au regret d’annuler également cette journée prévue le 30 juin 2020.
Nous espérons vous retrouver très nombreux pour l’édition 2021 de Devoxx France.
Lors de la journée du 30 juin 2020, les inscrits via OXiane assisteront à une formation. Le thème est à confirmer au moment de l’inscription.
Au choix :
- Le système de modules et migration vers Java 11 animé par Jean-Michel DOUDOUX
- Master Class Design d’API Java 8 animé par José PAUMARD
- Introduction au déploiement d’une application sur un cluster Kubernetes animé par Alain REGNIER
- La Suite Elastic animé par David PILATO et Melvyn PEIGNON
- Développement d’une architecture microservices avec JHipster, Spring Boot, Spring Cloud et Netflix OSS animé par Julien SADAOUI
- L’asynchrone en JavaScript – Des callbacks à RxJS animé par Julien POYARD
- Vos premiers pas avec Apache Kafka animé par Florent RAMIERE
Les participants devront se munir de leur ordinateur portable pour la journée du 30 juin. La configuration technique pour chaque module sera transmise en amont de la formation.
Le système de modules et migration vers Java 11 animé par Jean-Michel DOUDOUX
Le système de modules introduit en Java 9 apporte la refonte la plus controversée de Java.
Les modules amènent une complexité supplémentaire importante en introduisant une rupture et des contraintes (visibilité, accessibilité, organisation du code, …).
Mais il faut profiter des avantages des modules d’autant que la plateforme propose aussi des fonctionnalités pour assurer un mode de compatibilité, ceci afin de faciliter les migrations.
Objectifs :
- Découvrir les concepts et mettre en oeuvre le système de modules de Java
- Migration d’applications vers Java 11
Programme :
Introduction
Les modules : présentation
- Le besoin
- La modularité
- Le système de modules de Java
Les modules : définition
- Le descripteur de modules
- La visibilité entre modules
- Les dépendances
- L’accès par introspection
Les modules : mise en œuvre
- Le ModulePath
- Le packaging des modules
- Les différents type de modules
- La modularisation du JDK
Les modules : fonctionnalités avancées
- Les services
- Les runtimes personnalisés
Migration vers Java 11
- Les difficultés de migration à Java 9+
- La préparation à Java 9+
- La migration sans créer de modules
- La migration avec création de modules
- La migration de bibliothèques
Méthodes pédagogiques :
50 % théorie – 50 % pratique
Master Class Design d’API Java 8 animé par José PAUMARD
La formation s’adresse à des développeurs Java expérimentés ayant une bonne connaissance du langage, de ses API fondamentales. Une première connaissance dans l’écriture de lambda expressions et des patterns de l’API Stream est un plus.
Objectifs :
- Être capable d’écrire des lambda expressions dans toutes les situations.
- Comprendre l’organisation des interfaces fonctionnelles fournies par le JDK.
- Comprendre comment chaîner ou composer des interfaces fonctionnelles.
- Être capable de concevoir de nouvelles API sur les mêmes principes.
- Utiliser les évolutions de l’API Collection prenant en charge les lambda expressions.
- Appliquer ces méthodes de conception aux Design Pattern du Gang of Four
- Être capable de refactorer du code existant suivant ces principes en suivant les Design Pattern classiques du Gang of Four
- Utiliser l’application partielle de la programmation fonctionnelle pour le design d’API
- Utiliser la composition d’applications partielles pour le refactoring de code legacy
Programme :
Écriture de lambda expressions à partir d’interface fonctionnelles
- Les principales interfaces fonctionnelles du JDK
- Composition d’interfaces fonctionnelles simples
Application au design de nouvelles API
- Composition de lambda de natures différentes
- Construction d’API par composition et application partielle
Traitement de données en mémoire avec l’API Stream
- Enjeux du pattern map / filter / reduce, implémentation de l’API Stream
- Opérations intermédiaires et terminales sur les streams
Réductions avancées de données avec l’API Collector
- Rôle des collectors dans l’API Stream
- Modélisation de traitement de données avec l’API Collector
Méthodes pédagogiques :
40 % théorie – 60 % pratique
Introduction au déploiement d’une application sur un cluster Kubernetes animé par Alain REGNIER
Kubernetes ou “K8s” est une plate-forme open source permettant d’automatiser le déploiement, la montée en charge et la mise en œuvre de conteneurs d’applications.
Initialement conçu par Google, puis repris par la Cloud Native Computing Foundation.
Il fonctionne avec de nombreux containers, et est souvent utilisé avec Docker.
Objectifs :
- Comprendre le fonctionnement de Kubernetes
- Comprendre les différentes étapes de déploiement d’une application sur un cluster Kubernetes
Programme :
Introduction à Kubernetes
Docker et les containers
Orchestration de containers : Kubernetes
Architecture de Kubernetes
Concepts de base de Kubernetes
Kubernetes au quotidien
Kubernetes et son écosystème
La Suite Elastic animé par David PILATO et Melvyn PEIGNON
Elasticsearch est un moteur RESTful distribué de recherche et d’analytique basé sur Apache Lucene. Il vous permet d’indexer des données en temps réel venant de diverses sources pour pouvoir trouver des informations à jour à tout moment.
La haute disponibilité est au coeur de l’architecture d’Elasticsearch et permet donc de monter en puissance en s’exécutant sur plusieurs machines à la fois pour vous assurer que vos données seront toujours disponibles.
Programme :
Introduction à Elasticsearch
La collecte et analyse des métriques avec la suite Elastic
La collecte et analyse des logs avec la suite Elastic
APM (Application Performance Monitoring) par Elastic
Développement d’une architecture microservices avec JHipster, Spring Boot, Spring Cloud et Netflix OSS animé par Julien SADAOUI et Anthony VIARD
Cette formation s’axe sur le développement d’une architecture microservices assez complexe avec la plateforme Spring Boot, Spring Cloud et Netflix OSS.
Nous présenterons, dans un premier temps, une introduction théorique à JHipster, Spring Cloud et Spring Boot. Dans un second temps, vous participerez à la construction de plusieurs microservices avec ces outils. De la base de données (relationnelle et orientée documents) à l’interface utilisateur (Angular ou React), en passant par la couche de persistance (Spring Data), vous mettrez en place tous les patterns de résilience liés aux microservices.
Formation pratique d’une journée avec beaucoup de code.
Public :
- Développeurs, Architectes, Chefs de projet
Objectifs :
- Apprendre à prendre en main les architectures microservices avec Spring Cloud
- Utiliser pleinement toutes les fonctionnalités et profiter de l’expérience de JHipster dans la mise en oeuvre d’une architecture microservice.
Prérequis :
Maîtrise du langage Java SE (11+) ou autre langage de programmation orienté objet et des concepts de base de Spring, JPA et Angular.
Programme :
Introduction à JHipster
- Qu’est ce que JHipster ?
- Technologies utilisées : Spring Boot, Angular et React
- Outillage généré
- Bonnes pratiques d’utilisation de JHipster
- Installation
- Présentation du sous générateur d’entités (JDL)
Positionnement de Spring Cloud
- Introduction
- Positionnement
- 12 Factors Apps
- Spring spirit
- Gains attendus
Rappel des concepts d’architecture
- Architecture distribuée
- Architecture microservices
- Notion de Service Discovery
- Notion de Service de Configuration
- Communication : synchrone et asynchrone
- Communication : politiques de routage
- Tolérance à l’erreur
- Supervision et traçabilité
Principaux projets
- Spring Cloud Config
- Spring Cloud Netflix/Consul/Zookeeper
- Spring Cloud Sleuth
Génération des microservices
- Architecture
- Générer le microservice CRM
- Démarrer le registre JHipster
- Démarrer le micro service CRM
- Créer les entités pour le microservice CRM
- Générer le microservice Accountancy
- Démarrer le micro service Accountancy
- Créer les entités pour le microservice Accountancy
- Générer la Gateway
- Démarrer la Gateway
- Démarrer l’architecture avec Docker Compose
- JHipster Console/Zipkin
Développement des microservices
- API first avec Swagger / OpenAPI
- Spring Cloud Feign
- Répartition de charge avec Ribbon
- Tolérance à l’erreur avec Hystrix
- Centralisation de la configuration avec Spring Cloud Config
- Sécurisation des microservices (JWT ou OAuth)
- Cache distribué avec Hazelcast
- Tests de montée en charge
L’asynchrone en JavaScript – Des callbacks à RxJS animé par Julien POYARD
La programmation asynchrone fait intrinsèquement partie de JavaScript, malgré cela elle a beaucoup évolué ces dernières années au gré de la complexification des applications. Depuis les callbacks jusqu’au paradigme de la programmation réactive, beaucoup de chemin a été fait pour faciliter vos développements.
Objectifs :
- Découvrir les différents concepts et les mettre en oeuvre
- Découvrir la librairie RxJS
Programme :
Introduction
Principes de fonctionnement de JavaScript
Les callbacks
Les Promesses
async / await
La programmation réactive et RxJS
Vos premiers pas avec Apache Kafka animé par Florent RAMIERE
Florent a plus de vingt années d’expérience dans le développement logiciel et la conduite de projets informatiques. Il a passé plusieurs années aux Etats-Unis chez un éditeur de logiciel. A son retour en France après un détour chez Capgemini, il a co-fondé la société Jaxio. Après plus de 10 ans d’entrepreneuriat, Florent a rejoint la société Confluent (la société derrière Apache Kafka) où il accompagne les grands comptes en Europe.
Programme :
Fondamentaux
Hands on: Setup docker / plateforme & exercice
Fondamentaux Kafka streams
Hands on: Setup Kafka Streams & exercice
Fondamentaux KSQL
Hands on: Setup KSQL & exercice
Patterns/AntiPatterns
Hands on: Change Data Capture Setup & Exercice
Microservices
Cloud
Durant 3 jours, du 1er au 3 juillet 2020, 3 000 personnes se réuniront autour de conférences, de rencontres et d’ateliers pratiques.
Devoxx France est une conférence en 2 temps forts, sur 3 jours. La première journée, appelée “University”, vous permet d’assister à des présentations longues et de participer à des ateliers. Par exemple une session sur Docker, puis un atelier sur React ou Kotlin et enfin des présentations d’outils en fin de journée.
Le jeudi et le vendredi, Devoxx France propose d’abord des Keynotes (plénières) autour d’orateurs prestigieux, puis ensuite un cycle de conférences, toutes les 50 minutes. Vous pouvez ainsi construire votre propre agenda et suivre différentes sessions selon vos envies.
Issue de la communauté Java, Devoxx France s’est ouvert au fil des ans et accueille les développeurs en général. Du Web à la Sécurité, en passant par le Cloud Computing, notre comité de sélection trie et sélectionne 230 à 250 propositions de présentation, sur 900 candidatures.
Devoxx France fait partie de la famille des conférences Devoxx (Belgique, Angleterre, Pologne, Maroc et Ukraine). Notre communauté regroupe plus de 10 000 développeurs à travers le monde.
Tarif : Cursus 4 jours (30 juin au 1er juillet 2020) : 925 € HT/participant
A réception de l’inscription, une convention de formation professionnelle sera adressée au Client qui s’engage à nous en retourner un exemplaire signé.