Chapitre Présentation du langage Groovy
Exercice sur la programmation objet avec Gradle et Groovy
Mettre en pratique les concepts de la programmation orientée objet (POO) en Groovy dans le contexte de scripts Gradle, en utilisant également des objets spécifiques de Gradle.
Dernière modification : Dec 08 , 2024
Dernière modification : Dec 08 , 2024
Instructions
-
Définition d'une Classe :
- Créez une classe
Personne
avec les propriétés suivantes :nom
,age
,adresse
- Ajoutez un constructeur pour initialiser ces propriétés lors de la création d'une instance de la classe.
- Créez une classe
-
Méthodes de la Classe :
- Ajoutez des méthodes à la classe
Personne
pour afficher les détails de la personne (nom, âge, adresse). - Ajoutez une méthode
anniversaire
qui incrémente l'âge de la personne.
- Ajoutez des méthodes à la classe
-
Instanciation et Utilisation :
- Dans votre script Gradle, créez quelques instances de la classe
Personne
avec des données différentes. - Appelez les méthodes pour afficher les détails de chaque personne et simuler un anniversaire.
- Dans votre script Gradle, créez quelques instances de la classe
-
Héritage :
- Créez une sous-classe appelée
Employe
qui étend la classePersonne
. - Ajoutez des propriétés spécifiques à un employé, telles que numéro d'employé et poste.
- Ajoutez une méthode pour afficher les détails spécifiques à l'employé.
- Créez une sous-classe appelée
-
Utilisation de l'Héritage :
- Dans votre script Gradle, créez quelques instances de la classe
Employe
avec des données différentes. - Appelez les méthodes pour afficher les détails de chaque employé.
- Dans votre script Gradle, créez quelques instances de la classe
-
Utilisation d'Objets Gradle :
- Utilisez au moins un objet spécifique de Gradle dans votre script, par exemple, un objet lié à la gestion des dépendances (
DependencyHandler
) pour ajouter une dépendance factice à votre projet.
- Utilisez au moins un objet spécifique de Gradle dans votre script, par exemple, un objet lié à la gestion des dépendances (
Exemple de structure du projet
mon-projet/
|-- build.gradle
|-- src/
|-- main/
|-- java/
|-- resources/
Exemple de solution attendue
// build.gradle
class Personne {
String nom
int age
String adresse
Personne(String nom, int age, String adresse) {
this.nom = nom
this.age = age
this.adresse = adresse
}
void afficherDetails() {
println("Nom: $nom, Age: $age, Adresse: $adresse")
}
void anniversaire() {
age++
println("Joyeux anniversaire, $nom ! Vous avez maintenant $age ans.")
}
}
class Employe extends Personne {
int numeroEmploye
String poste
Employe(String nom, int age, String adresse, int numeroEmploye, String poste) {
super(nom, age, adresse)
this.numeroEmploye = numeroEmploye
this.poste = poste
}
void afficherDetailsEmploye() {
afficherDetails()
println("Numéro d'employé: $numeroEmploye, Poste: $poste")
}
}
// Instanciation et utilisation
def personne1 = new Personne("Alice", 25, "123 Rue A")
def personne2 = new Personne("Bob", 30, "456 Rue B")
personne1.afficherDetails()
personne2.anniversaire()
// Utilisation de l'héritage
def employe1 = new Employe("Charlie", 35, "789 Rue C", 12345, "Développeur")
def employe2 = new Employe("Dave", 40, "987 Rue D", 67890, "Manager")
employe1.afficherDetailsEmploye()
employe2.anniversaire()
// Utilisation d'objets Gradle
dependencies {
implementation 'com.example:ma-dependance:1.0.0'
}