Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
cours:exercicespoobat4exam [2013/11/13 13:32] tigli créée |
cours:exercicespoobat4exam [2013/11/27 15:37] (Version actuelle) tigli [Exercice 2 :] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | Exercice 1 : | + | ====== Travaux Pratiques de synthèse Programmation Orientée Objet sous C# ====== |
+ | |||
+ | |||
+ | ===== Exercice 1 : ===== | ||
+ | |||
1) Créez la classe Salarié : | 1) Créez la classe Salarié : | ||
Cette classe possédera 5 propriétés de visibilité privée : | Cette classe possédera 5 propriétés de visibilité privée : | ||
- | Matricule Matricule Integer | + | |
- | Nom Nom String | + | ^Nom des propriétés ^Définitions ^Types ^ |
- | Prénom Prénom String | + | ^Matricule | Matricule | Integer | |
- | Salaire Salaire Double | + | ^Nom | Nom | String | |
- | TauxCS Taux Charges Sociales Double | + | ^Prénom | Prénom | String | |
+ | ^Salaire | Salaire | Double | | ||
+ | ^TauxCS | Taux Charges Sociales | Double | | ||
Ces propriétés doivent seulement être accessibles par le biais des accesseurs (get / set) en lecture/écriture mis en œuvre par le biais de l’instruction Property. | Ces propriétés doivent seulement être accessibles par le biais des accesseurs (get / set) en lecture/écriture mis en œuvre par le biais de l’instruction Property. | ||
2) Ajouter les constructeurs suivants : | 2) Ajouter les constructeurs suivants : | ||
- | a. Un par défaut | + | |
- | b. Un qui permet de renseigner le matricule lors de l’instanciation | + | * Un par défaut |
- | c. Un qui permet de renseigner le matricule et le nom | + | * Un qui permet de renseigner le matricule lors de l’instanciation |
- | d. Un de recopie | + | * Un qui permet de renseigner le matricule et le nom |
- | e. et un autre initialisant toutes les propriétés. | + | * Un de recopie |
+ | * et un autre initialisant toutes les propriétés. | ||
NB : N’oubliez pas que le constructeur par défaut doit alors être défini explicitement. | NB : N’oubliez pas que le constructeur par défaut doit alors être défini explicitement. | ||
- | 3) Implémentez la méthode CalculerSalaireNet() ; cette méthode doit calculer le salaire net d’un employé qui équivaut à : Salaire – (salaire*TauxCS) et retournera la valeur calculée. | + | |
+ | 3) Implémentez la méthode CalculerSalaireNet() ; | ||
+ | |||
+ | cette méthode doit calculer le salaire net d’un employé qui équivaut à : Salaire – (salaire*TauxCS) et retournera la valeur calculée. | ||
4) Ajouter un programe de test où il faut créer des objets (en utilisant les différents constructeurs) et leur calculer le salaire. | 4) Ajouter un programe de test où il faut créer des objets (en utilisant les différents constructeurs) et leur calculer le salaire. | ||
Ligne 24: | Ligne 36: | ||
5) Le taux de charges sociales est en fait commun à tous les salariés. Pour éviter toute redondance de cette propriété, vous devriez donc la déclarer comme partagée au niveau de la classe Salarié et non comme une propriété spécifique des objets instanciés à partir de la classe. Proposer une solution et tester de nouveau avec d’autres objets. | 5) Le taux de charges sociales est en fait commun à tous les salariés. Pour éviter toute redondance de cette propriété, vous devriez donc la déclarer comme partagée au niveau de la classe Salarié et non comme une propriété spécifique des objets instanciés à partir de la classe. Proposer une solution et tester de nouveau avec d’autres objets. | ||
- | Exercice 2 : | + | ===== Exercice 2 : ===== |
+ | |||
1) Créer la classe Fournisseur : | 1) Créer la classe Fournisseur : | ||
+ | |||
Cette classe possédera 3 propriétés de visibilité privée : | Cette classe possédera 3 propriétés de visibilité privée : | ||
- | IdF Identifiant du fournisseur Integer | + | |
- | NomF Nom du fournisseur String | + | ^Nom des propriétés ^Définitions ^Types ^ |
- | PrenomF Prénom du fournisseur String | + | ^IdF | Identifiant du fournisseur| Integer | |
+ | ^NomF | Nom du fournisseur| String | | ||
+ | ^PrénomF | Prénom du fournisseur | String | | ||
Ces propriétés doivent seulement être accessibles par le biais des accesseurs (get / set) en lecture/écriture mis en œuvre par le biais de l’instruction Property. | Ces propriétés doivent seulement être accessibles par le biais des accesseurs (get / set) en lecture/écriture mis en œuvre par le biais de l’instruction Property. | ||
+ | |||
2) Créer un constructeur par défaut | 2) Créer un constructeur par défaut | ||
+ | |||
3) Créer un constructeur permettant d’initialiser tous les membres de la classe Founisseur | 3) Créer un constructeur permettant d’initialiser tous les membres de la classe Founisseur | ||
+ | |||
4) Créer la classe Auteur : | 4) Créer la classe Auteur : | ||
+ | |||
Cette classe possédera 3 propriétés de visibilité privée : | Cette classe possédera 3 propriétés de visibilité privée : | ||
- | IdA Identifiant de l’auteur Integer | + | |
- | NomA Nom de l’auteur String | + | ^Nom des propriétés ^Définitions ^Types ^ |
- | PrenomA Prénom du fournisseur String | + | ^IdA | Identifiant de l'auteur| Integer | |
+ | ^NomA | Nom de l'auteur| String | | ||
+ | ^PrénomA | Prénom de l'auteur | String | | ||
Ces propriétés doivent seulement être accessibles par le biais des accesseurs en lecture/écriture mis en œuvre par le biais de l’instruction Property. | Ces propriétés doivent seulement être accessibles par le biais des accesseurs en lecture/écriture mis en œuvre par le biais de l’instruction Property. | ||
5) Créer un constructeur par défaut | 5) Créer un constructeur par défaut | ||
+ | |||
6) Créer un constructeur permettant d’initialiser tous les membres de la classe Auteur | 6) Créer un constructeur permettant d’initialiser tous les membres de la classe Auteur | ||
+ | |||
7) Créer la classe Livre permettant de gérer des livres | 7) Créer la classe Livre permettant de gérer des livres | ||
+ | |||
Cette classe possédera 5 propriétés de visibilité privée : | Cette classe possédera 5 propriétés de visibilité privée : | ||
- | Titre Titre String | + | |
- | Annee Année d’apparution String | + | ^Nom des propriétés ^Définitions ^Types ^ |
- | NPage Nombre page Integer | + | ^Titre | Titre | String| |
- | Prix prix du livre Single | + | ^Annee | Année de parution| String | |
- | Fournisseur Founisseur du livre Classe Fournisseur | + | ^NPage | Nombre page | Integer| |
- | Auteur Auteur du livre Classe Auteur | + | ^Prix | prix du livre | Integer| |
+ | ^Fournisseur | Founisseur du livre | Classe Fournisseur| | ||
+ | ^Auteur | Auteur du livre | Classe Auteur | | ||
Ces propriétés doivent seulement être accessibles par le biais des accesseurs (get / set) en lecture/écriture mis en œuvre par le biais de l’instruction Property. | Ces propriétés doivent seulement être accessibles par le biais des accesseurs (get / set) en lecture/écriture mis en œuvre par le biais de l’instruction Property. | ||
+ | |||
8) Créer un constructeur permettant d’initialiser tous les membres de la classe Livre | 8) Créer un constructeur permettant d’initialiser tous les membres de la classe Livre | ||
+ | |||
9) Créer un constructeur de recopie | 9) Créer un constructeur de recopie | ||
+ | |||
10) Implémenter une méthode statique à qui on donne comme paramètre un livre et affiche les informations de son fournisseur | 10) Implémenter une méthode statique à qui on donne comme paramètre un livre et affiche les informations de son fournisseur | ||
+ | |||
11) Implémenter une méthode statique à qui on donne comme paramètre un livre et affiche les informations de son auteur | 11) Implémenter une méthode statique à qui on donne comme paramètre un livre et affiche les informations de son auteur | ||
+ | |||
12) Ajouter un programme de test où il faut créer différentes objets pour faire l’ensemble de teste | 12) Ajouter un programme de test où il faut créer différentes objets pour faire l’ensemble de teste | ||