Développeur WEB Fullstack avec Spring et React
What you'll learn
- Les concepts et la mise en oeuvre de la brique backend, le cœur de notre application, avec Spring
- Les concepts fondamentaux d'une Single Page Application, ou frontend, avec React
- Le développement de services qui suivent le paradigme "Restful" avec Spring MVC
- La mise en place de Spring Data pour interroger notre base de données
- L'authentification des utilisateurs avec Spring Security
- Le découpage d'une application WEB complexe en composants REACT
- Découverte de Bootstrap et React-Bootstrap
- Appels REST depuis le frontend avec les promesses Javascript et Axios
- Déployer dans le Cloud Avec Azure (Azure App Services et Vault)
- Un aperçu de la base Oracle dans le Cloud
- Un aperçu des Github actions pour déployer notre code!
Requirements
- Notions de base en programmation objet (JAVA idéalement), et quelques notions de JAVASCRIPT, HTML, CSS
Description
!!Mise à jour Juin 2023 : Utilisation de la dernière version Spring BOOT 3.1.1 !!
Ce cours, à travers le développement pas à pas d'une application d'emprunt de livre nommée "Sharebook", va vous permettre de mettre en pratique et comprendre à la fois la partie "backend", c'est à dire les traitements côté serveur, que "frontend", c'est à dire la partie visuelle de notre application.
Chaque session a un lien direct vers le code source concerné, afin de voir pas à pas si votre code est le bon. De plus, à la fin, on verra comment déployer notre application dans Azure! Bref la panel est large, et c'est le but de cette formation : vous faire appréhender toutes les briques essentielles du développement d'une Application Web moderne, avec les framework les plus utilisés en entreprise, SPRING et REACT.
La partie Backend, couvrira les aspects suivants :
- le framework SPRING CORE pour le fonctionnement de Spring;
- le framework SPRING MVC pour le développements de Web Services REST;
- le framework SPRING DATA pour interroger une base de données sans écrire de SQL (des notions de SQL sont les bienvenues cependant :)
- le framework SPRING SECURITY pour sécuriser notre application;
Mais ce cours couvre également la partie frontend, avec la mise en place d'une interface de type SPA (Single Page Application) moderne avec le framework React.
Ainsi on découvrira :
- la librairie React pour le développement frontend, avec notamment les principes fondamentaux de React que sont les props, le state, JSX, etc.
- les fondamentaux de Javascript à connaitre;
- Mettre en forme l'application avec Bootstrap
- L'appel au Backend et les APIs qu'on aura développées ensemble, grâce à la librairie Axios et aux promesses Javascript;
- un aperçu de React-Bootstrap pour simplifier le coding de composants Bootstrap
Enfin pour le déploiement dans Azure, on étudiera :
- Azure App Services qui hébergera notre application Sharebook;
- Azure Vault pour stocker les informations secrètes;
- Github Actions pour déployer notre code;
- Un aperçu de la base de données Oracle dans le Cloud;
Bref, le périmètre que l'on va couvrir est très large! De plus, L'accent est mis sur le coding, car c'est à mes yeux la meilleure façon d'apprendre. Ainsi pour chaque leçon, vous aurez directement accès au code concerné en cliquant sur le lien Ressources de la vidéo concernée. C'est un vrai plus pour vérifier que votre développement est correct!
Vous aurez un aperçu de beaucoup de technologies donc, sans rentrer en profondeur au vue du large éventail que l'on couvre. Néanmoins, vous aurez une solide connaissance des différentes briques pour le développement d'une application WEB moderne, afin de vous orienter plutôt vers la partie backend avec Java, et Spring ou le frontend avec Javascript et React. Mais vous pouvez aussi faire le choix que j'ai fais et être un développeur Fullstack, capable d'intervenir à la fois côté Front que côté Back.
Information importante!
Vous aurez accès au code concerné pour chaque vidéo, afin de vérifier que le code que vous avez développé est bien le bon. Dans le cours, pour la vidéo concernée, cliquez sur Ressources et sur le lien Code qui s'affiche; Vous serez directement redirigé sur le commit GIT concerné (sur le site Github) par la vidéo.
Ce cours est régulièrement mis à jour afin de vous faire profiter des derniers avancements des technologies utilisées.
Mises à jour du cours:
08/2023: Gestion d'erreurs avec Axios:
Session 128 Branchement MyBooks,
Session 136 Branchement livres disponibles
Session 138 Branchement Mes emprunts
Session 139 Rendre possible la navigation
06/2023: Spring BOOT 3.1.1, Azure 5.3.0, Sass au lieu de Node Sass
Sessions mises à jour, et code mis à jour sur mon Github:
- Session 11 : Utiliser Version Spring Boot 3.1.1
- Session 161 : Avertissement pour la configuration du Vault
- Session 162 : Connexion au Vault
- Nouvelles Session 104 : Présentation CSS, SCSS, Flexbox,
- Nouvelle Session 105 : Installation SASS
- Modification Session 106 : Styling MyBooks
02/2023: Spring BOOT 3.0.2 et JAVA 17
Voici la liste des vidéos modifiées / ajoutées suite à ces modifications (concerne le BACKEND uniquement). L'ensemble du code a également été mis à jour sur mon github.
Section 2 Initialisation SPRING
- Mise à jour Les outils Back utilisés;
- Ajout Java 17, MAVEN et IDE;
- Mise à jour Initialisation projet avec Spring Initalizr;
Section 4 Spring DATA
- Ajout Avertissement imports suite passage Spring BOOT 3.x;
Section 5 Spring SECURITY
- Mise à jour Codons UserDetailService;
- Mise à jour Codons la classe de configuration de Spring Security;
- Mise à jour Codons JwtUtils
07/2022:
- Revue complète de la Section 4 - Sécurité suite à la mise à jour de la dernière version Spring-Boot vers 2.7.1;
- Modifications Front suite au passage à React 18;
- Token JWT stocké dans le local Storage du navigateur, et transmis par Header Authroization (et non plus par Cookie);
- Amélioration du Swagger (ajout bouton Authorize pour mettre un token JWT)
04/2022:
- Nouvelle section 13/ Déploiement dans le Cloud avec Azure;
- Spring Boot vers 2.6.6, React-Router 6.3.0, Node 16.14.2, React 18
01/2022:
- Upgrade versions Spring Boot 2.6.2, Node LTS 16, create react app 5.0, react-router 6.2.1, axios 0.24.0;
- Lien au code source Github à chaque session (vidéo) plutôt que chaque section;
- Mise à jour des vidéos relatives à React-Router (nombreux changements);
- Mise à jour de l'ensemble du code source sur mon github
09/2021
- Upgrade versions Spring Boot 2.5.4, Node 14.18.0, React 17.0.2, Boostrap 5
06/2021
- Ajout vidéo 56 suite à la mise à jour de Spring Boot (initialisation base de données), activation Swagger avec Spring Security
Who this course is for:
- développeurs débutants à confirmés, souhaitant améliorer leurs connaissance dans la réalisation de sites WEB modernes de type "Single Page Application".
Instructor
- Développeur en environnement JAVA / JAVASCRIPT depuis 9 ans, en tant que prestataire la plupart du temps, ainsi que chez un éditeur de logiciels de renom.
Je me suis spécialisé dans les applications WEB Single Page Application (SPA) avec des framework comme React ou angular. Aujourd'hui je souhaite transmettre mon savoir à travers la plateforme Udemy!
- Certifié SCJP 6
- Clean code, tests unitaires (TDD, BDD) et DDD avec la mise en place de microservices, sont des choses qui m'intéressent tout particulièrement.