1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
Dismiss Notice
Welcome to our Education website, plz like our page facebook to support us. Thank You and wish you good navigation

Examen de Fin de Formation (EFM) 2017: module Programmation événementielle et Orientée Objet

abdelouafiJun 3, 2017

    1. abdelouafi

      abdelouafi Administrator Staff Member

      Messages:
      402
      Likes Received:
      9
      Trophy Points:
      18
      Joined
      Sep 13, 2016
      Examen de Fin de Formation (EFM) 2017 module Programmation événementielle et Orientée Objet.png

      L’objectif de cette application est de modéliser les quelques aspects du système de fichiers décrits ci-dessous à l'aide d'un diagramme de classes. Les dossiers contiennent des sous-dossiers et des fichiers. Le système de fichiers est en fait un ensemble de fichiers et de dossiers contenus dans un disque logique (C:\ D:\ ….) voir annexe.


      Dossier I (POO) : (30pts)

      A. Classe Dossier (15pts)

      1. Créer la classe Dossier caractérisée par : Le nom, la date de création, l’icône du dossier (de type Image) et le dossier parent (de type Dossier). (2pt)

      2. Ajouter un champ partagé icône par défaut initialisé par l’image « icône_init.jpg ». (1pt)

      3. Ajouter un accesseur à ce champ. (1pt)

      4. Ajouter un constructeur par défaut qui initialise le nom à « nouveau dossier » et la date de création à la date d’aujourd’hui. (1pt)

      5. Ajouter un constructeur d’initialiser qui pend en paramètres : le nom, le dossier parent et l’icône du dossier. (2pts)

      6. Redéfinir la méthode ToString qui retourne le nom du dossier. (1pt)

      7. Implémenter l’interface IComparable<Dossier> pour comparer deux dossiers par date de création. (2pts)

      8. Ajouter une méthode virtuelle chemin qui retourne le chemin d’un dossier. (3pts)

      Exemple :
      efm poo 2017.png

      1. Redéfinir la méthode Equals (deux dossier sont égaux s’ils ont le même chemin). (2pt)


      A. Classe Fichier (6pts)

      1. Créer la classe Fichier qui dérive de la classe Dossier, avec en plus les champs extension et taille. (1pt)

      2. Ajouter un constructeur d’initialisation. (2pts)

      3. Redéfinir la méthode ToString pour retourner le nom complet du fichier (Nom.extension). (1pt)

      4. Redéfinir la méthode chemin sachant que le chemin d’un fichier est le chemin de sont dossier parent (le dossier où il se trouve) plus son nom complet. (2pt)

      Exemple :

      Le chemin du fichier cours_poo d’extention doc qui se trouve dans le dossier D2 est « Programmes\Ms.Net\cours_poo.doc ».


      B. Classe Disque (9pts)

      1. Créer la classe Disque. Un disque est caractérisé par une lettre, une capacité (par exemple le disque C de capacité 73 175 707 Ko) et une liste de dossiers qu’il contient. (2pts)

      2. Ajouter un constructeur d’initialisation. (1pt)

      3. Ajouter une méthode EspaceUtilise pour calculer et renvoyer l’espace utilisé dans le disque (l’espace utilisé est la somme de la taille des fichiers). (2pts)

      4. Créer une méthode ajouterDossier qui permet d’ajouter un dossier ou un fichier à la liste des dossiers du disque. (vérifier si l’espace disponible sur le disque est suffisant dans le cas d’un fichier, si non lever une exception). (2pts)

      5. Créer une méthode Contenu qui prend en paramètre le chemin d’un dossier et renvoie la liste des dossiers et fichiers qui se trouvent dans ce dossier triés par date de création. (2pts)


      Dossier II (PE) : (20pts)

      Soit l’interface suivant :
      efm poo 2017 pe.png
      Les contrôles du formulaire sont décris dans le tableau suivant :
      efm poo ista tsg.png
      A. Déclarer un objet général dans la forme de type disque nommé disq_c et initialisé le avec : (2pt)

      § Lettre : C

      § Capacité : 77 111 111

      B. Ecrire le code des procédures événementielles relatif aux événements : (18pts)

      1. Au chargement de la Forme : (3pts)

      § Initialiser le textBox txt_disque avec la lettre du disque disq_c. (0.25)

      § Initialiser le Label lbl_capacite avec la capacité du disque disq_c. (0.25)

      § Initialiser le PictureBox pb_icone avec l’image de l’icône par défaut d’un dossier. (0.5)

      § Charger Le ComboBox cmb_dossiers avec « C:\ ». (0.25)

      § Sélectionner le 1er élément du ComboBox cmb_dossiers (0.25)

      § Désactiver le GroupBox grb_fichier (0.25)

      § Initialiser l’affichage du ListView lv_contenu à details (0.25)

      § Initialiser les colonnes comme indiquer dans l’image ci-dessus. (1pt)

      2. A l’activation/désactivation de la case Fichier: (1pt)

      § Activer/désactiver le GroupBox grb_fichie

      3. Au click sur le Button btn_icone : (2pts)

      § Choisir à l’aide du OpenFileDialog une image qui sera affiché dans le PictureBox pb_icone

      4. Au click sur le Button btn_ajouter: (4pts)

      § Créer un dossier (ou fichier) et ajouter le à la collections des dossiers du disq_c.

      § Afficher le message d’exception au cas d’un espace insuffisant sur le disque.

      § Ajouter le chemin du dossier (seulement les dossiers) au ComboBox cmb_dossiers

      5. Au click sur le Button btn_afficher : (2pts)

      § Charger le ListBox lb_dossiers par la liste des chemins des dossiers du disq_c (attention : seulement les dossiers et non pas les fichiers)

      6. A la sélection d’un élément dans le ListBox lb_dossiers : (4pts)

      § Charger le contenu (dossiers et fichiers) du dossier sélectionné dans le ListView lv_contenu (voir le formulaire ci-dessus).

      7. Au click sur le Button btn_sauvgarder : (2pts)

      § Enregistrer l’objet disq_c dans un fichier nommé « disque_C.bin ».




      Annexe :


      anex efm poo.png
       

      Attached Files:

      Loading...
      Cliquez ici pour télécharger la solution de l'EFM POO et PE 2017

Share This Page

Share