Internship Manager est une application console développée en Groovy/Java avec Gradle, suivant une architecture MVC complète. Elle permet de gérer des stages étudiants via des opérations simples : ajout, recherche, liste et suppression.
- 📌 Créer un stage (titre, entreprise, dates)
- 📋 Lister tous les stages enregistrés
- 🔍 Rechercher un stage par mot-clé (titre)
- 🗑️ Supprimer un stage
- 🧩 Architecture claire et modulaire
| Couche / Package | Classe(s) | Rôle | Détails |
|---|---|---|---|
🧩 Model (model/) |
Internship |
Modèle métier | Titre, entreprise, dates, toString() pour l’affichage |
🗄️ Repository (repositories/) |
InternshipRepository |
Persistance en mémoire | Ajout, suppression, lecture complète, recherche par titre |
⚙️ Service (services/) |
InternshipService |
Logique métier | Création, recherche, suppression, encapsulation du repository |
🖥️ View (views/) |
ConsoleView, InternshipView |
Interface utilisateur | Console interactive (structure prête), vue dédiée future |
🚀 Main (Main.groovy) |
Main |
Point d’entrée | Initialise repository + service, ajoute, liste, recherche, supprime |
src/
└── main/groovy/org/example
├── model/
│ └── Internship.java
├── repositories/
│ └── InternshipRepository.java
├── services/
│ └── InternshipService.java
├── views/
│ ├── ConsoleView.java
│ └── InternshipView.java
└── Main.groovy
- Groovy
- Java
- Gradle
- Architecture MVC
- Persistance en mémoire
Ce projet introduit :
- la modélisation d’objets métier
- la séparation des responsabilités
- la logique métier via un service
- la gestion de données via un repository
- la structuration MVC
- la manipulation de collections
Il constitue une base solide pour évoluer vers :
- une API REST (Spring Boot)
- une interface graphique (JavaFX)
- une persistance réelle (PostgreSQL, MongoDB…)