Skip to content

NDXDeveloper/formation-java-eclipse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

☕ Formation Java avec Eclipse IDE (JDK 25 LTS)

License
Java
Eclipse
Chapitres
Annexes
Language
Mise à jour

Un guide progressif pour apprendre, maîtriser et déployer des applications Java modernes avec Eclipse IDE — du langage aux API REST, sans rien cacher de l'écosystème.

Java Logo


📖 Table des matières


📋 À propos

Formation centrée sur le Java tel qu'on l'écrit en 2026 : un langage vivant, avec une
nouvelle version tous les six mois et une LTS tous les deux ans. On y apprend le Java modernerecords, classes scellées, pattern matching, virtual threads, switch expressions — et pas seulement le « Java d'il y a quinze ans ». Le tout avec Eclipse IDE comme outil du quotidien,
de la première classe jusqu'aux API REST, à la persistance et au déploiement.

Sur le choix de l'IDE, cette formation est transparente :

Eclipse IDE est un environnement libre, gratuit et open source (EPL 2.0), maintenu par la
Eclipse Foundation avec des releases trimestrielles régulières. Il reste largement utilisé
— entreprise, écosystème Jakarta EE, embarqué, enseignement. Mais IntelliJ IDEA domine
aujourd'hui le marché et VS Code progresse. Cette formation enseigne Eclipse à fond, tout en
étant honnête sur ce qu'apportent les alternatives — et en rappelant que les compétences Java
sont transférables à n'importe quel IDE. Voir l'Annexe B.

Cette formation ne cherche pas à opposer Eclipse aux autres IDE ni Java aux autres langages, mais
à fournir une ressource sérieuse et à jour pour apprendre Java efficacement. Elle n'est pas
parfaite ; l'objectif est de vous faire gagner du temps.

✨ Ce que vous y trouverez :

  • 📚 18 chapitres — du langage aux API REST, en passant par le desktop, les données et le déploiement
  • 🆕 JDK 25 LTS — version de référence (septembre 2025, mises à jour gratuites jusqu'en septembre 2028)
  • 🔧 Eclipse IDE 2026-06 — exploité réellement : refactorings, débogage, Maven/Gradle, Spring Tools, MAT
  • 🌐 Création d'API REST — Spring Boot 4 (@RestController, OpenAPI) et Jakarta EE 11 (JAX-RS)
  • 🖥️ Desktop — JavaFX (moderne) et Swing (legacy), avec Scene Builder
  • 🗄️ Données — JDBC, JPA / Hibernate, migrations, pools de connexions
  • Java modernerecords, sealed, pattern matching, virtual threads, GraalVM Native Image
  • 🤖 Développement assisté par IA — un chapitre complet (Copilot, génération de tests, migration)
  • 📖 9 annexes — aide-mémoire, choix d'IDE, bonnes pratiques, migration de versions, outils & installation, références
  • 🇫🇷 En français — parce que c'est plus accessible

Durée estimée : ~35-45 h de lecture théorique • 24-30 jours pour le parcours complet en pratiquant les exemples
Niveau : débutant à confirmé


✨ Points forts

  • Moderne — on enseigne le Java de 2026 (records, sealed, pattern matching, virtual threads), pas celui d'il y a quinze ans
  • Honnête sur l'outil — Eclipse enseigné à fond, sans cacher ce qu'apportent IntelliJ IDEA et VS Code (Annexe B)
  • Transférable — la priorité au langage ; les compétences valent dans n'importe quel IDE
  • À jour — JDK 25 LTS, Eclipse 2026-06, Spring Boot 4 / Jakarta EE 11, Hibernate 7, JUnit 6
  • 🌐 Orientée production — création d'API REST, sécurité, tests, déploiement (Docker, natif, CI/CD)
  • 🤖 IA-first — un chapitre complet sur le développement assisté, devenu un standard
  • 🛠️ Pragmatique — build (Maven/Gradle), persistance (JPA), migration de versions, profilage
  • 🧩 Stratégique — feuille de route Java, quand passer de LTS en LTS, choix d'écosystème

🎯 Pour qui ?

Cette formation s'adresse à différents profils. Choisissez votre parcours :

👤 Profil 📚 Chapitres recommandés ⏱️ Durée estimée
Débutant 1-3, 5, 6 5-7 jours
Développeur Backend / Spring Boot 1-10, 12-17 12-15 jours
Développeur Desktop (JavaFX/Swing) 1-7, 9, 11, 14-15 9-11 jours
Développeur Données / Persistance 1-4, 6-10, 14 8-10 jours
Maintenance & Migration Legacy 1-3, 6, 9-12, Annexe E 7-9 jours
Architecte / Performance 🌳 1-4, 8, 13-16, 18 + Annexe B 12-15 jours
IA-First 🤖 1-3, 7, 17 3-4 jours
Formation complète 1-18 + annexes 24-30 jours

📚 Contenu de la formation

Les 7 parties

# Partie Chapitres Niveau Sujets clés
1 Java et son écosystème en 2026 (cadrage & langage) 1-4 🌱 Débutant JDK & LTS, types, POO, records/sealed, Stream API, pattern matching
2 Maîtriser Eclipse IDE 5 🌱 Débutant Perspectives, refactorings, débogage, Git, Marketplace, IA
3 Build, dépendances et qualité 6-7 🌿 Intermédiaire Maven, Gradle, JUnit 6, Mockito, Testcontainers, JaCoCo, analyse statique
4 Concurrence, E/S et données 8-10 🌿 Intermédiaire Virtual threads, concurrence structurée, NIO, JSON, JDBC, JPA/Hibernate
5 Applications : desktop, web et services 11-12 🌿 Intermédiaire JavaFX, Swing, API REST (Spring Boot ⭐, Jakarta EE)
6 Qualité, performance, exploitation et sécurité 13-16 🌳 Avancé Journalisation, GC, JMH, JPMS, natif, Docker, CI/CD, OWASP
7 IA et avenir 17-18 🌳 Avancé Développement assisté par IA 🤖, feuille de route, ressources

Les chapitres

  1. Introduction : Java, la JVM et l'écosystème
  2. Fondamentaux du langage
  3. Programmation orientée objet (records, sealed, génériques)
  4. Java moderne et programmation fonctionnelle (Stream API, java.time, exceptions)
  5. Eclipse IDE en profondeur 🔧
  6. Build et gestion de dépendances (Maven, Gradle)
  7. Tests et qualité du code (JUnit 6, Mockito, Testcontainers)
  8. Concurrence et parallélisme (virtual threads ⚡, concurrence structurée)
  9. E/S, fichiers et sérialisation (NIO, JSON)
  10. Accès aux données (JDBC, JPA / Hibernate)
  11. Applications de bureau (JavaFX, Swing)
  12. Web et services — création d'API REST ⭐ (Spring Boot, Jakarta EE)
  13. Journalisation, débogage et observabilité
  14. Performance et gestion de la mémoire (GC, JMH, MAT)
  15. Déploiement, packaging et DevOps (JPMS, jlink/jpackage, GraalVM Native Image, Docker, CI/CD)
  16. Sécurité des applications (OWASP, Spring Security, cryptographie)
  17. Développer en Java avec l'IA (l'ère Copilot) 🤖
  18. Stratégie, feuille de route et ressources

🔥 Technologies & nouveautés couvertes (réellement à jour en 2026)

  • Java modernerecords, classes scellées, pattern matching, blocs de texte, switch expressions
  • 🧵 Concurrencevirtual threads (Project Loom) et concurrence structurée (StructuredTaskScope)
  • 🌐 API RESTSpring Boot 4 (Spring Framework 7), Jakarta EE 11 (JAX-RS, Jakarta Data), OpenAPI
  • 🗄️ Persistance — JPA / Hibernate 7, migrations (Flyway/Liquibase), pools (HikariCP)
  • 🚀 Déploiement natifjlink, jpackage, GraalVM Native Image, conteneurs
  • 🤖 IA appliquée — intégration via Spring AI et LangChain4j

📎 Les 9 annexes

  • A. Aide-mémoire Java (syntaxe & API)
  • B. Choisir son IDE : Eclipse vs IntelliJ IDEA vs VS Code 🔧
  • C. Bonnes pratiques de codage Java (+ avec l'IA 🤖)
  • D. Raccourcis et astuces Eclipse 2026-06 🆕
  • E. Guide de migration de versions Java (8/11/17/21 → 25) 🆕
  • F. Glossaire et acronymes
  • G. FAQ et dépannage (+ pièges IA 🤖)
  • H. Versions Java et cycle de support
  • I. Outils à installer & guide d'installation (Windows / Kubuntu) 🔧 🐧

📖 Sommaire détailléSOMMAIRE.md


🚀 Démarrage rapide

Installer le JDK 25 et Eclipse IDE 2026-06

# Vérifier la version du JDK installée
java -version

# Installer le JDK 25 LTS — recommandé : Eclipse Temurin (OpenJDK, gratuit)
# Windows / macOS / Linux : https://adoptium.net/temurin/releases/?version=25
# macOS (Homebrew) : brew install --cask temurin@25
# Linux (SDKMAN!)  : sdk install java 25.0.3-tem   (numéro exact via « sdk list java »)

# ⚠️ Oracle JDK ≠ OpenJDK côté licence : pour rester en usage libre,
#    préférez une distribution OpenJDK (Temurin, Corretto, Zulu, Liberica…).
# Installer Eclipse IDE 2026-06 (package « Eclipse IDE for Java Developers »)
# https://www.eclipse.org/downloads/packages/
# ✅ Choisissez le package "Eclipse IDE for Java Developers" (Maven, Gradle et Git inclus)

Créer votre premier projet Java

# Option 1 — En ligne de commande avec Maven
mvn archetype:generate -DgroupId=com.exemple -DartifactId=mon-premier-projet \
  -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
cd mon-premier-projet
mvn compile
mvn exec:java -Dexec.mainClass="com.exemple.App"

# Option 2 — Dans Eclipse
#   File > New > Java Project        (projet simple)
#   File > New > Maven Project       (projet Maven)
#   File > New > Other > Gradle      (projet Gradle, via Buildship)

# ✅ Vous êtes prêt !

💡 Pour démarrer une API REST sans configuration, le plus simple est
start.spring.io (Spring Initializr) : générez le projet, puis
ouvrez-le dans Eclipse avec Spring Tools — voir le chapitre 12.

Cloner cette formation

git clone https://github.com/NDXDeveloper/formation-java-eclipse.git
cd formation-java-eclipse

📁 Structure du projet

formation-java-eclipse/
│
├── 📄 README.md                          # Ce fichier
├── 📄 SOMMAIRE.md                        # Table des matières complète (source de vérité)
├── 📄 LICENSE                            # Licence CC BY-NC-SA 4.0
│
├── 📂 01-introduction-java/              # JDK & LTS, écosystème, installation Eclipse
├── 📂 02-fondamentaux-langage/           # Types, switch moderne, blocs de texte…
├── 📂 03-poo/                            # Classes, héritage, records, sealed, génériques
├── 📂 04-java-moderne-fonctionnel/       # Collections, Stream API, java.time, exceptions
├── 📂 05-eclipse-en-profondeur/          # 🔧 Perspectives, refactorings, débogage, Git
├── 📂 06-build-dependances/              # Maven, Gradle
├── 📂 07-tests-qualite/                  # JUnit 6, Mockito, Testcontainers, JaCoCo, analyse statique
├── 📂 08-concurrence/                    # Threads, executors, virtual threads, Loom
├── 📂 09-io-fichiers/                    # java.io / NIO, JSON (Jackson)
├── 📂 10-acces-donnees/                  # JDBC, JPA / Hibernate, migrations, cache
├── 📂 11-desktop/                        # JavaFX, Swing, Scene Builder
├── 📂 12-web-services/                   # 🌐 API REST : Spring Boot, Jakarta EE, messagerie
├── 📂 13-journalisation-observabilite/   # SLF4J/Logback, JFR, OpenTelemetry
├── 📂 14-performance/                     # JVM, GC, JMH, Eclipse MAT
├── 📂 15-deploiement-devops/             # JPMS, jlink/jpackage, natif, Docker, CI/CD
├── 📂 16-securite/                       # OWASP, Spring Security, cryptographie
├── 📂 17-developpement-ia/               # 🤖 Développer avec l'IA (l'ère Copilot)
├── 📂 18-strategie-roadmap/              # Feuille de route Java, ressources
│
└── 📂 annexes/
    ├── aide-memoire-java/                # A. Aide-mémoire syntaxe & API
    ├── choisir-ide/                      # B. 🔧 Eclipse vs IntelliJ vs VS Code
    ├── bonnes-pratiques/                 # C.
    ├── raccourcis-eclipse/               # D.
    ├── migration-versions/               # E.
    ├── glossaire/                        # F.
    ├── faq-depannage/                    # G.
    ├── versions-reference/               # H.
    └── outils-installation/              # I.

Chaque dossier contient un README.md (sommaire du chapitre) et un fichier .md par section,
reliés entre eux par une navigation 🔝 Sommaire / ⏭️ section suivante.


🗓️ Parcours d'apprentissage suggéré

🌱 DÉBUTANT
│
├─ Partie 1 : Java et son écosystème en 2026 (cadrage & langage)
└─ Partie 2 : Maîtriser Eclipse IDE
   │
   ▼
🌿 INTERMÉDIAIRE
│
├─ Partie 3 : Build, dépendances et qualité (Maven/Gradle, JUnit 6)
├─ Partie 4 : Concurrence, E/S et données (virtual threads, JPA)
└─ Partie 5 : Applications — desktop, web et API REST
   │
   ▼
🌳 AVANCÉ
│
├─ Partie 6 : Qualité, performance, exploitation et sécurité
└─ Partie 7 : IA et avenir (développement assisté, stratégie, roadmap)

🎓 Total : ~35-45 h de lecture (24-30 jours en pratiquant les exemples, à 30 min-1 h/jour)

🎯 Parcours Express (3-4 jours) pour les pressés :

  • Chapitre 1 — Introduction (JDK, LTS, Eclipse)
  • Chapitre 3 — Programmation orientée objet
  • Chapitre 5 — Eclipse IDE en profondeur
  • Chapitre 12 — Web et services (création d'API REST)
  • Chapitre 17 — Développer avec l'IA

🔗 Ressources officielles

Ressource Lien
📖 Documentation Java (JDK) docs.oracle.com/en/java
🧩 OpenJDK openjdk.org
📥 Eclipse Temurin (JDK gratuit) adoptium.net
⚙️ Eclipse IDE eclipseide.org
🌱 Spring Boot spring.io/projects/spring-boot
🏗️ Spring Initializr start.spring.io
🏢 Jakarta EE jakarta.ee
✅ JUnit 6 junit.org
📦 Maven / Gradle maven.apache.org · gradle.org
🤖 GitHub Copilot github.com/features/copilot

❓ FAQ

Q : Quelle version de Java apprendre et cibler en 2026 ?

Pour un nouveau projet, Java 25 LTS (support gratuit jusqu'en septembre 2028). Java 21 LTS
reste très répandu en production. Une nouvelle LTS sort tous les deux ans (17, 21, 25, puis 29 en
septembre 2027). Détails au chapitre 1 et en Annexe H.

Q : Pourquoi Eclipse plutôt qu'IntelliJ IDEA ou VS Code ?

Parce qu'Eclipse est libre, gratuit, open source et toujours très utilisé (entreprise, Jakarta
EE, embarqué, enseignement). Mais la formation est honnête : IntelliJ IDEA mène le marché et VS
Code progresse. Surtout, les compétences Java sont transférables — voir Annexe B.

Q : La formation couvre-t-elle la création d'API REST ?

Oui, c'est un usage central : chapitre 12 (Spring Boot avec @RestController, validation,
OpenAPI ; alternative Jakarta EE avec JAX-RS), appuyé par la persistance (chapitre 10), la sécurité
(chapitre 16) et les tests (chapitre 7).

Q : Faut-il payer pour utiliser Java ?

Non. Les distributions OpenJDK (Temurin, Corretto, Zulu, Liberica…) sont gratuites. ⚠️
Attention seulement aux conditions de licence de l'Oracle JDK en production (chapitre 1).

Q : Maven ou Gradle ?

Les deux sont couverts (chapitre 6), avec leur intégration Eclipse (m2e et Buildship). Maven pour
sa simplicité et son ubiquité ; Gradle pour sa flexibilité.

Q : La formation couvre-t-elle le développement avec l'IA ?

Oui — chapitre 17 complet : prompting efficace pour du Java idiomatique, génération de tests et de
Javadoc, migration de versions assistée, intégration de l'IA dans vos applications (Spring AI,
LangChain4j), et les pièges à éviter.

Q : J'ai du code Java legacy (Java 8/11, Swing). Par où commencer ?

Annexe E (migration de versions, javaxjakarta, OpenRewrite), chapitre 11 pour Swing, et
chapitre 18 pour la stratégie.

Q : Cette formation remplace-t-elle la documentation officielle ?

Non, elle la complète. C'est un guide d'apprentissage progressif, pas une référence exhaustive.

Q : Puis-je utiliser ce contenu pour enseigner ?

Oui, sous licence CC BY-NC-SA 4.0 — attribution requise, usage non commercial, partage identique.


📝 Licence

Ce projet est sous licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International (CC BY-NC-SA 4.0).

Vous pouvez :

  • Partager — copier et redistribuer le matériel
  • Adapter — remixer, transformer et créer à partir du matériel

⚠️ Selon les conditions suivantes :

  • Attribution — vous devez créditer l'œuvre originale
  • Pas d'Utilisation Commerciale — pas d'usage à des fins commerciales
  • Partage dans les Mêmes Conditions — toute redistribution sous la même licence

📄 Voir le fichier LICENSE pour les détails complets.

Attribution suggérée :

Formation Java avec Eclipse IDE (JDK 25 LTS) par Nicolas Deoux
https://github.com/NDXDeveloper/formation-java-eclipse
Licence CC BY-NC-SA 4.0

👨‍💻 Contact

Nicolas Deoux


🙏 Remerciements

Merci à :

  • Oracle, la communauté OpenJDK et Adoptium pour Java et le JDK
  • La Eclipse Foundation pour Eclipse IDE et Jakarta EE
  • L'équipe Spring et la communauté Java, qui font vivre l'écosystème
  • Les contributeurs open source qui rendent ces outils accessibles
  • Anthropic, OpenAI, GitHub et les créateurs d'outils IA qui transforment le développement
  • Vous qui prenez le temps d'apprendre avec cette formation

☕ Bon apprentissage avec Java ! ☕

Cette formation est un travail en cours. Elle n'est pas parfaite, mais j'espère sincèrement qu'elle vous sera utile dans votre parcours d'apprentissage.

📖 Consulter le sommaire complet →

⬆ Retour en haut

Dernière mise à jour : Juin 2026

About

☕ Formation Java moderne (JDK 25 LTS) avec Eclipse IDE .. du langage aux API REST Spring Boot, en français. 18 chapitres, 9 annexes, développement assisté par IA.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors