DAIGL – Développement - TD/TP – Structures de données
2.3. Panneau "Insérer"
Variable Classe Commentaire
b_inserer wx.Button Déclencher l'insertion d'un nouveau film dans la liste.
b_annuler wx.Button RAZ de tous les champs de saisies.
tc_nom wx.TextCtrl Saisir le titre du nom.
c_plateforme wx.Choice Sélectionner la plate-forme du jeu.
cb_reseau wx.CheckBox Indiquer si le jeux est jouable en réseau.
c_genre wx.Choice Sélectionner le genre du jeu.
tc_prix wx.TextCtrl Saisir le prix du jeu.
tc_date wx.TextCtrl Saisir la date de sortie du jeu.
Plate-formes autorisées : Wii, PS3, PS2, PS1, Xbox 360, Xbox, PSP, DS
Genres autorisés : Action, Aventure, Combat, Course, FPS, MMO, Plates-formes, Réflexion, Simulation,
Sport, Wargame.
3- Organisation et persistance des données
Vous avez décidé de simuler la base de données recensant l'ensemble des jeux dont les fiches sont
consultables sur le site web, par un fichier texte nommé par défaut jeux.txt. Au lancement de
l'application, la fonction lireBase() retourne le contenu du fichier jeux.txt qui est recopié dans la
variable globale nommée Jeux (voir déclaration ci-après), et en fin d'exécution, le contenu de cette variable
est recopiée dans le fichier jeux.txt (nom par défaut) par appel à la procédure écrireBase().
Après recopie des données en mémoire vive, le tableau Jeux est à l'image du fichier jeux.txt (une ligne
du fichier pour un élément structuré du tableau). Ce tableau pouvant ne pas être rempli, la variable globale
nb_jeux nous permet de connaître à tout instant, le nombre de films mémorisés. Il faut donc prévoir la
gestion de cette variable dans les différents algorithmes qui constituent l'application (exemple : incrémenter
la valeur de nb_jeux lors de l'insertion d'un nouveau jeu).
Déclaration des variables globales :
Constante :
NB_JEUX = 10000
Variables globales :
Jeux[NB_JEUX] : Jeu
nb_jeux : Entier
Chaque jeu est mémorisé dans le fichier jeux.txt (nom par défaut) sous la forme d'une chaîne de
caractères respectant le format "nom:plate-forme:réseau:genre:date-de-sortie". Le champ
réseau a pour valeurs 0 (Faux) ou 1 (Vrai). Le champ date-de-sortie est structuré sous la forme
"JJ/MM/AAAA".
4- Développement de l'application
4.1. Structure des données
4.1.1. Rechercher la déclaration du type Date.
4.1.2. Quel type de donnée Python sera utilisé pour représenter une date ?
4.1.3. A partir des captures d'écran de l'application, rechercher le type Jeu permettant d'enregistrer dans le
tableau Jeux les informations concernant un jeu vidéo.
4.1.4. Quel type de donnée Python sera utilisé pour représenter un jeu ?
page 2