Voici une liste des fondamentaux Java à maîtriser pour être à l’aise
avec Spring Boot.
Bases du langage Java (obligatoire)
➜ Syntaxe et structures fondamentales
Types primitifs (int, double, boolean, etc.)
Variables et constantes (final)
Opérateurs (arithmétiques, logiques, comparaison)
Conditions (if, switch)
Boucles (for, while, do while)
Méthodes :
o paramètres
o valeur de retour
o surcharge (overloading)
Important : lire du code doit devenir naturel.
Programmation orientée objet (ESSENTIEL+
+)
Spring repose entièrement sur l’OOP.
➜ Concepts fondamentaux
Classes / objets
Encapsulation (getters/setters)
Héritage
Polymorphisme
Abstraction (abstract class, interfaces)
➜ À maîtriser particulièrement :
Interfaces vs classes abstraites
Composition vs héritage
Bon design objet (SOLID)
Packages, modules et organisation du code
Très important pour Spring Boot :
Organisation en packages
Visibilité (public, private, protected, default)
Import statique vs normal
Structure Maven/Gradle classique
Ça aide à comprendre :
injection Spring
architecture modulaire
Gestion des exceptions
Ultra utilisé dans Spring.
À connaître :
Exceptions checked vs unchecked
try / catch / finally
throw / throws
Création d'exceptions customisées
Très utilisé dans :
REST APIs
Validation métier
Gestion erreurs backend
Collections Java (CRITIQUE)
Spring manipule énormément d’objets.
À maîtriser :
List
ArrayList
LinkedList
Set
HashSet
TreeSet
Map
HashMap
LinkedHashMap
TreeMap
Concepts importants :
Génériques (List<User>)
Différence List vs Set
Génériques Java
Indispensable avec Spring.
Comprendre :
Types paramétrés
Wildcards :
o <?>
o <? extends T>
o <? super T>
Exemple réel Spring :
Repository JPA
DTOs
Collections typées
Lambda, Streams et programmation
fonctionnelle
Très utilisé en Spring moderne.
Obligatoire :
Expressions lambda
Interfaces fonctionnelles
Stream API :
o map
o filter
o reduce
o collect
Optional (Optional<T>)
Exemple :
Mapping DTO
Traitement collections
Validation
Notions réseau & HTTP (indispensable
backend)
Même si ce n’est pas pur Java :
HTTP basics :
o GET, POST, PUT, DELETE
o headers
o status codes
JSON
REST APIs
Spring Boot = backend web.
Build tools (très important)
Spring Boot utilise :
Maven ou Gradle
Tu dois comprendre :
dependencies
lifecycle build
plugins
packaging JAR/WAR
Tests Java (souvent négligé)
Très important avec Spring :
JUnit 5
Mockito
Tests unitaires vs intégration
Spring Boot testing est massif.