====== Travaux Pratiques de synthèse Programmation Orientée Objet sous C# ====== ===== Exercice 1 : ===== 1) Créez la classe Salarié : Cette classe possédera 5 propriétés de visibilité privée : ^Nom des propriétés ^Définitions ^Types ^ ^Matricule | Matricule | Integer | ^Nom | Nom | String | ^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. 2) Ajouter les constructeurs suivants : * Un par défaut * Un qui permet de renseigner le matricule lors de l’instanciation * Un qui permet de renseigner le matricule et le nom * 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. 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. 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 : ===== 1) Créer la classe Fournisseur : Cette classe possédera 3 propriétés de visibilité privée : ^Nom des propriétés ^Définitions ^Types ^ ^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. 2) Créer un constructeur par défaut 3) Créer un constructeur permettant d’initialiser tous les membres de la classe Founisseur 4) Créer la classe Auteur : Cette classe possédera 3 propriétés de visibilité privée : ^Nom des propriétés ^Définitions ^Types ^ ^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. 5) Créer un constructeur par défaut 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 Cette classe possédera 5 propriétés de visibilité privée : ^Nom des propriétés ^Définitions ^Types ^ ^Titre | Titre | String| ^Annee | Année de parution| String | ^NPage | Nombre page | Integer| ^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. 8) Créer un constructeur permettant d’initialiser tous les membres de la classe Livre 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 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