Le Langage C# : Classes et objects (cours 11)

0
Le Langage C#

Introduction

1. Limites de l’approche procédurale

Les données et fonctions sont définies séparément. On doit donc passer les données en paramètre à chaque fonction. Ceci pose :

  •  Le problème de la protection des données puisque les champs sont accessibles à tous ;
  •  Le problème de l’encapsulation en général.

2. Encapsulation et concept d’objet

En conception orientée objet, les données et les fonctions qui les manipulent sont regroupées dans une même entité : l’objet. Les détails d’implémentation sont donc cachés et l’extérieur n’a accès aux données qu’au travers de l’interface de l’objet.

Les avantages sont nombreux :

  • Abstraction de données,
  •  Modularité,
  • Facilités de modification (couplage faible),
  • Réutilisabilité,
  • Lisibilité des programmes: détails d’implémentation cachés.

Lors du développement d’une application dans un langage orientée objet, vous créez un modèle qui ressemble à une situation réelle pour résoudre votre problème. Prenons par exemple une application de paie de l’entreprise, qui peut calculer le salaire net d’un employé et le montant de l’impôt sur le revenu payable. Une telle application aurait un objet Société pour représenter la société, les objets Employé représentant les employés travaillant pour le société, les objets de taxe pour représenter les détails de taxe de chaque employé, et ainsi de suite.

3. Classes

Les classes sont des types référence définis par l’utilisateur. Elles sont similaires aux classes C++ ou Java. Leurs caractéristiques sont :

    • L’héritage simple sur la classe ;
    • Elles peuvent implémenter de multiples interfaces ;
    • Le contrôle de l’accès aux membres se fait par les modificateurs d’accès : public, private, internal, protected, protected internal
    • Le mode par défaut est private ;
    • Les membres des classes sont des :
      • Constantes, champs (fields), méthodes, opérateurs (constructeurs et destructeurs);Les membres des classes sont des :
      • Propriétés, indexeurs, évènements ;
      • Membres par classe (static) ou par instance;
    • Les classes sont instanciées par l’opérateur new.

Une classe est un plan ou un modèle permettant de créer des objets de type identique. Si vous avez une Classe Employé, vous pouvez créer un nombre quelconque d’objets Employé. Pour créer la rue comme objet, vous avez besoin d’une classe de rue. Une classe détermine le type d’objet que vous obtenez.
Par exemple, si vous créez une classe Employé comportant des champs Âge et Poste, tous les employés (les objets) créés à partir de cette classe auront également des champs Âge et Position. La classe détermine les objets.
En résumé, les classes sont un outil POO permettant aux programmeurs de créer l’abstraction d’un problème. En POO, l’abstraction consiste à utiliser des objets de programmation pour représenter des objets du monde réel .

Exemple

c-sharp

LAISSER UN COMMENTAIRE

Entrez votre commentaire!
Entrez votre nom ici