diff --git a/rapport_finale.md b/rapport_finale.md index 2a31e3c..34b6bdb 100644 --- a/rapport_finale.md +++ b/rapport_finale.md @@ -407,24 +407,6 @@ class Function { ``` -### LISTE DE TESTS - -Afin de s'assurer de la maintenabilité de notre code et de la qualité de -celui-ci, nous allons réaliser plusieurs tests sur les différentes méthodes -que nous allons programmé dans notre application, voici quelques -exemples : - -- Création d'une case avec une valeur fixe -- Création d'une case avec une formule d'opération binaire et une -fonction comme une moyenne -- Modification d'une case avec une valeur sans qu'elle soit utilisée dans -une autre case -- Modification d'une case avec une valeur utilisée dans une autre case -- Vérification qu'une erreur se lève lors de la création des 2 types -de cycles (direct et indirect) -- Renvoie de la formule dévéloppée d'une case avec une formule assez compliqué -- Sauvegarde d'une grille - ## 2. STRUCTURE DU PROJET ### PACKAGES, CLASSES, FICHIERS DE DONNÉES @@ -459,46 +441,49 @@ Au cours de ce projet, voici ce que nous avons réalisé : - La gestion des cycles aussi bien direct qu'indirects. - La modification d'une case par des valeurs ou des formules et dans ce dernier cas la vérification qu'aucun cycle n'est créée. - La gestion de la langue (en francais et en anglais). -- De supprimer une case que si elle existe et, n'est pas utilisée par d'autres cases. -- De sérialiser l'état d'une grille après avoir effectué des actions. +- De supprimer une case que si elle existe et, si elle n'est pas utilisée par d'autres cases. +- De sauvegarder l'état d'une grille après avoir effectué des actions, puis de pouvoir la récupérer. ### L'interface graphique L'interface graphique implementée permet d'effectuer les actions suivantes : -- Créer une case à partir de d'une valeure. -- Créer une case en saisissant une formule (aussi bien français qu'en anglais). - Par exemple, on crée la case A10=SOMME(A1,A2,B2) +- Créer une case en saisissant une valeur. +- Créer une case en saisissant une formule (aussi bien en français qu'en anglais). + Par exemple, on écrit dans la cellule A10 : "=SOMME(A1,A2,B2)" ![CASE](rapport_image/case_f.PNG) ![CASE](rapport_image/case_fv.PNG) -- Emettre une erreur lorsque l'on saisit du texte au lieu d'un double ou une formule incorrecte. +- Emettre une erreur lorsque l'on saisit du texte au lieu d'un double ou une formule inconnue / incorrecte. ![CASE](rapport_image/erreur_s.PNG) + - Emettre une erreur indiquant qu'un cycle est généré. -- Emettre une erreur indiquant qu'on ne peut pas supprimer une case utilisé par d'autres cases. +- Emettre une erreur indiquant qu'on ne peut pas supprimer une cellule qui est utilisée par d'autres cellules. - ![CASE](rapport_image/erreur_sup.PNG) +![CASE](rapport_image/erreur_sup.PNG) ### Les tests Plusieurs tests ont été réalisés au cours de ce projet notamment celles permettant de : -- Créer une ou plusieurs cases +- Créer une ou plusieurs cases avec une valeur fixe ou une formule - Mettre à jour une case avec une valeur ou formule - Créer une exception lorsqu'un cycle est créee -- Créer une exception lorsqu'on utilise une case pas encore créée -- Effectuer le re-calcul des cases qui dependent d'une case quand elle est modifiée +- Créer une exception lorsqu'on utilise une case qui n'est pas encore créée +- Effectuer le re-calcul des cases qui dépendent d'une case quand elle est modifiée - Supprimer une case que si elle n'est pas utilisée par d'autres cases - +- Sauvegarde d'une grille ## Conclusion -En résumé, ce projet de programmation par objet (PPO) avait pour but de développer les actions que l'on peut faire avec un classeur Excel usuel.Il était divisé en deux parties : -- La première, créée un noyeau avec differentes méthodes permettant d'effectuer et vérifier des actions comme la création, modification d'une case avec des valeurs, opérations usuelles ou formules. -- La deuxième, de créer un interface. -Ces deux parties ont été réalisées ainsi que des tests permettant de fonctionner le fonctionnement. +En résumé, ce projet de programmation par objet (PPO) avait pour but de développer les actions que l'on peut faire avec un classeur Excel usuel. +Il était divisé en deux parties : +- La première, créée un noyau avec differentes méthodes permettant d'effectuer et vérifier des actions comme la création, +modification d'une case avec des valeurs, opérations usuelles ou formules. +- La deuxième, de créer une interface graphique. +Ces deux parties ont été réalisées ainsi que des tests permettant de vérifier le fonctionnement de notre noyau. ce projet nous a donc été bénéfique car, il nous a permis de pouvoir mettre en pratique nos connaisances tout en developpant des nouvelles. Aussi, concernant les améliorations possibles , l'on pourrait envisager de pouvoir ajouter dans l'interface une option permettant de choisir la langue étant donné qu'actuellement l'on fait un choix d'affichage dans une langue et l'utilisateur ne peut la modifier mais, peut rentrer le nom de d'une fonction dans les deux langues, sera fonctionnera. \ No newline at end of file -- libgit2 0.21.2