Refactorisation des nombres magiques et placement dans des constantes, et ajout de final là où pertinent

This commit is contained in:
Feror 2025-01-23 11:01:00 +01:00
parent 28efe6c3c0
commit 4d04c316a6
5 changed files with 36 additions and 31 deletions

BIN
carApp/.DS_Store vendored

Binary file not shown.

BIN
carApp/src/.DS_Store vendored

Binary file not shown.

View file

@ -1,13 +1,17 @@
public class Application {
public static void main(String[] args) {
private static final int AGE = 20;
private static final int INITIAL_SPEED = 80;
private static final int REDUCED_SPEED = 30;
public static void main(final String[] args) {
Voiture maVoiture = new Voiture("Sedan", "Bleu");
Conducteur moi = new Conducteur("John", 20);
Conducteur moi = new Conducteur("John", AGE);
moi.demarrerVoiture(maVoiture);
maVoiture.accelerer();
moi.changerVitesse(maVoiture, 80);
moi.changerVitesse(maVoiture, INITIAL_SPEED);
maVoiture.ralentir();
moi.changerVitesse(maVoiture,30);
moi.changerVitesse(maVoiture, REDUCED_SPEED);
moi.arreterVoiture(maVoiture);
System.out.println("fini");
}

View file

@ -1,17 +1,18 @@
public class Conducteur {
private String nom;
private int age;
private static final int ADULT_AGE = 10;
private final String nom;
private final int age;
public Conducteur(String name, int years) {
public Conducteur(final String name, final int years) {
this.nom = name;
this.age = years;
}
public boolean estAdulte() {
return age >= 10;
return age >= ADULT_AGE;
}
public void demarrerVoiture(Voiture voiture) {
public void demarrerVoiture(final Voiture voiture) {
if (estAdulte()) {
System.out.println(nom + " démarre la voiture.");
} else {
@ -19,18 +20,17 @@ public class Conducteur {
}
}
public void arreterVoiture(Voiture voiture) {
public void arreterVoiture(final Voiture voiture) {
System.out.println(nom + " arrête la voiture.");
}
public void changerVitesse(Voiture voiture, int nouvelleVitesse) {
public void changerVitesse(final Voiture voiture, final int nouvelleVitesse) {
System.out.println(nom + " change la vitesse de la voiture à " + nouvelleVitesse);
int vitesseActuelle;
if (voiture.getVitesse() >= nouvelleVitesse) {
while (voiture.getVitesse() > nouvelleVitesse) {
voiture.ralentir();
}
} else {
} else {
while (voiture.getVitesse() < nouvelleVitesse) {
voiture.accelerer();
}

View file

@ -1,9 +1,11 @@
public class Voiture {
private String modele;
private String couleur;
private static final int MAX_SPEED = 120;
private static final int SPEED_INCREMENT = 10;
private final String modele;
private final String couleur;
private int vitesse;
public Voiture(String model, String color) {
public Voiture(final String model, final String color) {
this.modele = model;
this.couleur = color;
this.vitesse = 0;
@ -14,27 +16,26 @@ public class Voiture {
}
public void accelerer() {
if (vitesse + 10 <= 120) {
vitesse += 10;
// afficher détails
System.out.println("Modèle : " + modele);
System.out.println("Couleur : " + couleur);
System.out.println("Vitesse actuelle : " + vitesse);
if (vitesse + SPEED_INCREMENT <= MAX_SPEED) {
vitesse += SPEED_INCREMENT;
afficherDetails();
} else {
System.out.println("La vitesse maximale est atteinte.");
}
}
public void ralentir() {
if (vitesse - 10 >= 0) {
vitesse -= 10;
// afficher détails
System.out.println("Modèle : " + modele);
System.out.println("Couleur : " + couleur);
System.out.println("Vitesse actuelle : " + vitesse);
if (vitesse - SPEED_INCREMENT >= 0) {
vitesse -= SPEED_INCREMENT;
afficherDetails();
} else {
System.out.println("La voiture est déjà à l'arrêt.");
}
}
}
private void afficherDetails() {
System.out.println("Modèle : " + modele);
System.out.println("Couleur : " + couleur);
System.out.println("Vitesse actuelle : " + vitesse);
}
}