duchainer / gestinotestest Goto Github PK
View Code? Open in Web Editor NEWDeuxième essai avec git et Netbeans pour mon Travail pratique
License: MIT License
Deuxième essai avec git et Netbeans pour mon Travail pratique
License: MIT License
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.
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.
@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
Message de confirmation et quitte
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.)
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
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.
Utiliser des composants graphiques de choix à chaque fois que c’est possible (boutons radios,
cases à cocher, listes déroulantes, sliders, etc.)
Affiche la fenêtre principale de l’application (de départ)
Donner le style natif aux fenêtres de l’application à l’aide du le Look and Feel Java
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
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.
o Mettre à jour le rapport d’analyse-conception de votre application de manière à concorder
avec la dernière version de votre application.
Bonnes pratiques :
Il faut que Eleve et Aide Panel soit plus proche de l'esthétique de GestionnairePanel
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
un label et une barre de progression pour chaque groupe existant pour indiquer son taux de
remplissage
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.
affiche brièvement quelques explications sur la manière d’utiliser l’application
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
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.
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 : 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.
affiche les informations sur l’application: les noms des auteurs, la
date, le lieu, etc.
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)
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.
En faisant un motif aux lignes plus larges.
Voir #19 et la classe LogoRosemont.
*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
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.