From 9a94abed0b01bd83f537dc009e299c0323c08914 Mon Sep 17 00:00:00 2001
From: Hugo Desmons <hugo.desmons.etu@univ-lille.fr>
Date: Fri, 29 Nov 2024 11:03:38 +0100
Subject: [PATCH] Ajout javadoc pour ClassificationApp, KNNView, Main,
 MainStageView, Observer

---
 .../sae/classification/ClassificationApp.java | 16 +++++++++++++-
 .../fr/univlille/sae/classification/Main.java |  8 ++++++-
 .../sae/classification/utils/Observer.java    | 21 ++++++++++++++++++-
 .../sae/classification/view/KNNView.java      |  3 +++
 .../classification/view/MainStageView.java    | 17 ++++++++++-----
 5 files changed, 57 insertions(+), 8 deletions(-)

diff --git a/src/main/java/fr/univlille/sae/classification/ClassificationApp.java b/src/main/java/fr/univlille/sae/classification/ClassificationApp.java
index 145eb3a..c3c9cd7 100644
--- a/src/main/java/fr/univlille/sae/classification/ClassificationApp.java
+++ b/src/main/java/fr/univlille/sae/classification/ClassificationApp.java
@@ -7,9 +7,19 @@ import javafx.stage.Stage;
 
 import java.io.IOException;
 
+/**
+ * Classe principale pour l'application de classification.
+ * Cette classe initialise et lance l'interface graphique de l'application.
+ */
 public class ClassificationApp extends Application {
 
 
+    /**
+     * Point d'entrée principal pour l'initialisation de l'interface utilisateur.
+     * Cette méthode configure la vue principale en utilisant une instance du modèle
+     * de classification, puis affiche la fenêtre principale.
+     * @param stage la fenêtre principale de l'application.
+     */
     public void start(Stage stage) throws IOException {
         ClassificationModel model = ClassificationModel.getClassificationModel();
         MainStageView view = new MainStageView(model);
@@ -17,7 +27,11 @@ public class ClassificationApp extends Application {
         view.show();
     }
 
-    // Ouvre l'application
+    /**
+     * Point d'entrée principal de l'application.
+     * Cette méthode lance l'application JavaFX.
+     * @param args les arguments de ligne de commande.
+     */
     public static void main(String[] args) {
         Application.launch(args);
     }
diff --git a/src/main/java/fr/univlille/sae/classification/Main.java b/src/main/java/fr/univlille/sae/classification/Main.java
index c1bafba..84adac9 100644
--- a/src/main/java/fr/univlille/sae/classification/Main.java
+++ b/src/main/java/fr/univlille/sae/classification/Main.java
@@ -6,8 +6,14 @@ import javafx.application.Application;
 import javafx.stage.Stage;
 
 import java.io.IOException;
-
+/**
+ * Cette classe redirige l'exécution vers la classe principale de l'application,
+ */
 public class Main {
+    /**
+     * Point d'entrée principal de l'application.
+     * @param args les arguments de ligne de commande.
+     */
     public static void main(String[] args) {
             ClassificationApp.main(args);
     }
diff --git a/src/main/java/fr/univlille/sae/classification/utils/Observer.java b/src/main/java/fr/univlille/sae/classification/utils/Observer.java
index e17a1a3..0f7f208 100644
--- a/src/main/java/fr/univlille/sae/classification/utils/Observer.java
+++ b/src/main/java/fr/univlille/sae/classification/utils/Observer.java
@@ -1,9 +1,28 @@
 package fr.univlille.sae.classification.utils;
 
-public interface Observer {
 
+/**
+ * Interface pour implémenter le modèle Observateur.
+ * Cette interface définit les méthodes que les classes doivent implémenter pour agir
+ * comme des observateurs dans le cadre du modèle Observateur/Observé.
+ * Les observateurs sont notifiés des changements d'état des objets observés
+ * via les méthodes `update'.
+ */
+public interface Observer {
 
+    /**
+     * Méthode appelée pour notifier l'observateur qu'un changement s'est produit
+     * dans l'objet observé.
+     * @param observable l'objet observé qui a subi un changement.
+     */
     void update(Observable observable);
+
+    /**
+     * Méthode appelée pour notifier l'observateur qu'un changement s'est produit
+     * dans l'objet observé, avec des données supplémentaires.
+     * @param observable l'objet observé qui a subi un changement.
+     * @param data des informations supplémentaires concernant le changement.
+     */
     void update(Observable observable, Object data);
 
 
diff --git a/src/main/java/fr/univlille/sae/classification/view/KNNView.java b/src/main/java/fr/univlille/sae/classification/view/KNNView.java
index 31cd298..890522f 100644
--- a/src/main/java/fr/univlille/sae/classification/view/KNNView.java
+++ b/src/main/java/fr/univlille/sae/classification/view/KNNView.java
@@ -26,6 +26,9 @@ public class KNNView {
         this.owner = owner;
     }
 
+    /**
+     * Affiche la fenêtre de chargement des données.
+     */
     public void show() {
         FXMLLoader loader = new FXMLLoader();
         URL fxmlFileUrl = getClass().getClassLoader().getResource("stages"+ File.separator+"k-NN-stage.fxml");
diff --git a/src/main/java/fr/univlille/sae/classification/view/MainStageView.java b/src/main/java/fr/univlille/sae/classification/view/MainStageView.java
index 1b6717a..585ffe0 100644
--- a/src/main/java/fr/univlille/sae/classification/view/MainStageView.java
+++ b/src/main/java/fr/univlille/sae/classification/view/MainStageView.java
@@ -27,12 +27,9 @@ import java.util.*;
 public class MainStageView extends DataVisualizationView implements Observer {
 
 
-
-
     private Stage root;
 
 
-
     private ScatterChart.Series series1;
     private ScatterChart.Series series2;
     private ScatterChart.Series series3;
@@ -40,6 +37,7 @@ public class MainStageView extends DataVisualizationView implements Observer {
 
     /**
      * Constructeur de la vue principale.
+     *
      * @param model modèle de classification à utiliser.
      */
     public MainStageView(ClassificationModel model) {
@@ -60,7 +58,7 @@ public class MainStageView extends DataVisualizationView implements Observer {
         FXMLLoader loader = new FXMLLoader();
 
         try {
-            URL fxmlFileUrl = getClass().getClassLoader().getResource("stages"+File.separator+"main-stage.fxml");
+            URL fxmlFileUrl = getClass().getClassLoader().getResource("stages" + File.separator + "main-stage.fxml");
 
             if (fxmlFileUrl == null) {
                 System.out.println("Impossible de charger le fichier fxml");
@@ -101,13 +99,22 @@ public class MainStageView extends DataVisualizationView implements Observer {
     }
 
 
-
+    /**
+     * Retourne le contrôleur principal de la scène.
+     *
+     * @return le contrôleur principal de la scène en tant qu'instance.
+     */
     public MainStageController getController() {
         return (MainStageController) controller;
     }
 
+    /**
+     * Recharge les données nécessaires à partir du modèle de classification.
+     * Cette méthode met à jour l'état en fonction des données actuelles
+     */
     @Override
     public void reload() {
         this.update(ClassificationModel.getClassificationModel());
     }
 }
+
-- 
GitLab