Aller au contenu

Java

Écosystème entreprise dominant créé par Sun Microsystems en 1995, Java repose sur la JVM et la promesse "Write Once, Run Anywhere". Avec un cycle de release semestriel et des LTS régulières, il reste le choix de référence pour les applications à grande échelle.


graph LR
    A["Histoire"] --> B["Frameworks"]
    B --> C["Exemples"]
    C --> D["Tests"]
    D --> E["Construction"]
    E --> F["Bonnes pratiques"]
    F --> G["Ecosysteme"]

Ce que vous allez apprendre

À la fin de ce tutoriel, vous serez capable de :

  • Situer Java dans son évolution de Sun Microsystems a Java 21 LTS avec les virtual threads
  • Choisir un framework adapté (Spring Boot, Quarkus, Micronaut) selon les besoins du projet
  • Implémenter une API REST CRUD avec Spring Boot 3 et un microservice event-driven avec Kafka
  • Mettre en place des tests avec JUnit 5, Mockito et Testcontainers
  • Construire et packager avec Maven ou Gradle, inclure GraalVM native-image
  • Appliquer les idiomes modernes (records, sealed classes, pattern matching) et optimiser la JVM

Parcours

Section Contenu
Histoire De James Gosling chez Sun Microsystems a Java 21 LTS, rachat Oracle, OpenJDK, virtual threads
Frameworks courants Comparatif Spring Boot, Quarkus, Micronaut, Jakarta EE, Helidon. Écosystème Hibernate, Spring Security, Lombok
Exemples d'implementation API REST CRUD avec Spring Boot 3, microservice event-driven avec Kafka, @KafkaListener, serialisation JSON
Tests JUnit 5, Mockito, @WebMvcTest + MockMvc, Testcontainers pour intégration, JaCoCo pour couverture
Construction & packaging Maven vs Gradle, JAR/WAR, GraalVM native-image, Jlink, Dockerfile multi-stage, CI/CD
Bonnes pratiques Records, sealed classes, pattern matching, anti-patterns (God class, null returns), JVM tuning, GC
Ecosysteme IntelliJ IDEA, Checkstyle, SpotBugs, Error Prone, JFR + JMC, async-profiler, SDKMAN!