Git Product home page Git Product logo

gestinotestest's People

Contributors

duchainer avatar patrickd4868 avatar rafeu avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

gestinotestest's Issues

une couleur d’arrière fond et d’avant fond

  • Personnaliser votre application en intégrant une icône (logo) dans toutes les fenêtres affichées et le titre GestiNotes_02, une couleur d’arrière fond et d’avant fond, etc.) -
  • Pas sûr si on est obliger, mais je le met en issue pour qu'on s'en rapelle

Option Nouveau

permet d’afficher dans la même fenêtre,
un formulaire d’inscription de l’étudiant au programme (avec des champs pour saisir ses informations), l’étudiant sera automatiquement inscrit dans un groupe ouvert (qui n’a pas encore atteint la limite de
10), dès que le groupe atteint cette limite, il sera fermé et un nouveau groupe sera
ouvert, et le code permanent est alors affiché avec le numéro de groupe (dans une boite
de dialogue ou mieux, dans la même fenêtre.

Menu Gestionnaire, ajouter les sous-menus suivants :

 Initialiser : permet d’initialiser le système avec les étudiants du fichier init.txt
 Exporter : permet de sauvegarder dans un fichier objet DataEtudiants.dat, toutes
les données des étudiants inscrits, avec la possibilité de choisir son emplacement
via une boite de sélection de fichiers.
 Comme cette opération de sauvegarde risque de prendre du temps, il
faudrait qu’elle soit effectuée dans un thread distinct pour éviter le
blocage des autres fonctionnalités de l’application.
 Importer : permet de récupérer du fichier objet DataEtudiants.dat, toutes les
données des étudiants inscrits, avec la possibilité de choisir son emplacement via
une boite de sélection de fichiers.
 Cette option permettra de récupérer tous les étudiants inscrits dans le
système.

Update ComboBox

@patrickd4868 Il faudrait utiliser un actionListener sur le tab OU un thread qui l'update toute les secondes
Edit: Finalement je vais juste update les combo depuis Enregistrer de ElevePanel (C'est seulement là qu l'on crée un groupe

Intégrer Logo et Titre GestiNotes_02

Personnaliser votre application en intégrant une icône (logo) dans toutes les fenêtres affichées et
le titre GestiNotes_02, une couleur d’arrière fond et d’avant fond, etc.)

Un seul JFrame

tl;dr: Faire varier les JPanel dans le JFrame

Utiliser de préférence une seule JFrame en faisant varier les JPanel qu’elle contiendra selon les
options de menus choisis

Intégrer des animations au graphisme

Dans la fenêtre principale, ajouter un effet d’animation en boucle du texte affiché ou
d’une image thématique affichée: soit un défilement horizontale / vertical ou autre,
soit un agrandissement/rétrécissement, ou changements de couleurs ou tout autre effet.

Composantes de choix DÈS QUE POSSIBLE

Utiliser des composants graphiques de choix à chaque fois que c’est possible (boutons radios,
cases à cocher, listes déroulantes, sliders, etc.)

Option Annuler

Affiche la fenêtre principale de l’application (de départ)

Utiliser des onglets?

Vous pouvez si vous le désirez afficher des onglets à la place des options de menus. Dans ce
cas, il faut toujours garder les 3 menus principaux Professeur, Étudiant et Aide @patrickd4868

  • [ ]

Choix du Gestionnaire de présentation

adéquats pour bien aligner les
composants des différents formulaires, et pour que le redimensionnement de la fenêtre n’ait pas
beaucoup d’impacts sur l’organisation des composants.

Rédiger le rapport

o Mettre à jour le rapport d’analyse-conception de votre application de manière à concorder
avec la dernière version de votre application.

VÉRIFIER LES BONNES PRATIQUE

Bonnes pratiques :

  • Respecter l’architecture MVC : Modèle-Vue-Contrôleur
  • Attention : aucune lecture ni affichage dans une classe du modèle, uniquement dans les
    classes Vues et contrôleur.
  • Les classes du modèle de la version 1 ne devraient pas être modifiées, la version 2 consiste à
    modifier et-ou ajouter des classes graphiques.
  • Mettre un titre explicite aux fenêtres et aux boites, et une étiquette (JLabel) pour TOUS les
    composant utilisé
  • Utiliser des couleurs et des fontes pour mettre en évidence les composants que vous jugez utiles
  • Utiliser les boites de dialogue pour les messages d’erreurs et de confirmation en faisant
    attention à personnaliser la boite selon la nature du message (erreur, avertissement,
    information).
  • Bien aligner les composants et sauter les lignes au besoin pour aérer,
  • Valider les saisies lorsque possible et afficher les messages d’erreurs appropriés
  • Respecter les normes de programmation (voir document sur Léa)

Intégrer la gestion des exceptions

o Traiter adéquatement les exceptions comme suit:
 Dans le programme principal : rattraper avec (try-catch) toutes les exceptions
 Dans les classes modèle (Étudiant, Groupe, ..) : ne jamais rattraper d’exception,
mais plutôt les lancer (throw) et les remonter (throws) au besoin
 Dans les classes vue (graphiques) : rattraper OU de préférence, remonter les
exceptions
o Les exceptions doivent être lancées (throw) lorsque :
 Le nom, prénom des étudiants est vide (setter)
 Les notes ne sont pas entre 0 et 100 lors de leurs modifications (dans les setters
des classes contenant les notes d’étudiants) - Utiliser une classe personnalisée
pour ceci, la classe HorsLimiteException vue en cours
 Un diviseur nul, comme dans le calcul de la moyenne ou autre ...
o Traiter adéquatement TOUTES les exceptions concernant les fichiers
 Veiller à signaler adéquatement toute erreur découlant des fichiers
o Pour signaler les erreurs :
 Les messages doivent être précis et suffisant pour indiquer la nature de l’erreur,
et EN FRANCAIS
 Utiliser une boite de dialogue (de type ERROR_MESSAGE) pour signaler les
erreurs

Menu Étudiant :

Ajouter un sous-menu Imprimer qui permet d’écrire dans un fichier texte (le
bulletin) qui sera nommé avec le nom et prénom de cet étudiant
(NomPrénomEtudiant.txt ) toutes les informations de l’étudiant, dont le code
permanent est demandé via une boite de dialogue.
 L’emplacement du fichier devra être demandé via une boite de sélection
de fichiers.
 Les informations écrites doivent être accompagnées de messages
explicites, avec une structure convenable (ce fichier n’est pas destiné à
être traité par l’application mais plutôt à être lu par l’étudiant).
o Important : Ne pas utiliser de chemin absolu pour les noms des fichiers mais des
chemins relatifs.

Option ?

affiche brièvement quelques explications sur la manière d’utiliser l’application

Option Modifier

permet d’afficher dans la même fenêtre
 Une liste déroulante pour choisir un groupe d’étudiants (selon le numéro), la
sélection d’un groupe entraine l’affichage au bas de la même fenêtre de :
 la liste (code, nom, prénom) des étudiants du groupe sélectionné dans une liste
déroulante également, et la sélection d’un étudiant entraine l’affichage au bas de
la même fenêtre des :
 quatre notes de l’étudiant sélectionné dans des champs de texte bien identifiés
 Il sera alors possible de modifier une ou plusieurs notes dans les champs de texte,
grâce à un bouton Enregistrer

Option Afficher

permet d’afficher dans la même fenêtre, les notes de l’étudiant dont le
code sera demandé via une boite de dialogue. S’il ne trouve pas, le signaler.

Option Lister

permet d’afficher dans la même fenêtre :
 Une liste déroulante pour choisir un groupe d’étudiants (selon le numéro), et la
sélection d’un groupe entraine l’affichage au bas de la même fenêtre de :
 la liste de tous les étudiants en ordre alphabétique des noms, bien alignés, avec
toutes leurs informations, un étudiant par ligne

Préalable:Intégrer le traitement de fichiers

Préalable : Remplir manuellement un fichier texte init.txt par les données des 8
étudiants de départ, une donnée par ligne, une ligne blanche entre chaque étudiant.
Les initialisations ne se feront donc plus par codage comme dans les Tps précédents,
mais via ce fichier. Placer ce fichier dans le dossier du projet.

Option À propos

affiche les informations sur l’application: les noms des auteurs, la
date, le lieu, etc.

Option Statistiques

permet d’afficher dans la même fenêtre:
 Une liste déroulante pour choisir un groupe d’étudiants (selon le numéro), et la
sélection d’un groupe entraine l’affichage au bas de la même fenêtre des :
 Statistiques du groupe : moyenne, variance, écart type, meilleure note, pire note,
taux de succès (nombre de réussites sur le total des étudiants du groupe)

Option Modifier

permet d’afficher dans la même fenêtre, les informations de l’étudiant
dont le code sera demandé via une boite de dialogue (ce formulaire est identique à celui
de l’inscription) dans lequel il y aura toutes les informations de l’étudiant avec la
possibilité de modifier ses informations (toutes sauf le code permanent). S’il ne trouve
pas, le signaler.

Intégrer les tests unitaires

*Définir une classe de test pour chaque classe modèle avec les méthodes de tests
appropriées
*Chaque méthode de test devrait spécifier au moins 3 cas de tests pertinents
*Nommer convenablement les classes de tests et leurs méthodes de tests
*Inutile de définir les classes de tests pour les classes Vue et Contrôleur

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.