Programmation Orientée Objet – Dépendances entre les classes

En conception et programmation orientée objet, il existe différentes manières « d’associer » les classes entre elles : L’association L’association entre deux classes permet d’indiquer qu’une classe est en liaison avec une autre. Par exemple, si un client peut passer des commandes, alors il est nécessaire d’associer les classes Client et Commande, afin de pouvoir
Read More »

Langage C# – L’importance des accesseurs (propriétés)

Faites-vous partie des développeurs qui considèrent qu’il n’est pas utile d’utiliser des accesseurs (nommés propriétés dans Visual Studio) dans vos classes (en particulier les classes métier), en préférant l’utilisant directe des attributs (nommés champs dans Visual Studio) ? // Attribut private string _NumeroImmatriculation; // Accesseur permettant d'accéder en lecture / écriture. public string NumeroImmatriculation {
Read More »

Langage C# – Le polymorphisme par héritage

Le polymorphisme par héritage consiste à définir une méthode ou une propriété virtuelle (avec le mot clé virtual) dans une classe de base, afin d’avoir la possibilité de la redéfinir dans les classes dérivées (avec le mot clé override) : public class FormeGeometrique {     // Membres de la classe     public virtual
Read More »

Langage C# – Le polymorphisme par abstraction

Le polymorphisme par héritage consiste à définir une méthode ou une propriété comme étant abstraite (avec le mot clé abstract) dans une classe de base dans un arbre d’héritage. Comment arrive-t-on dans cette situation ? Tout simplement quand on considère qu’on est « trop haut » dans un arbre héritage pour proposer une implémentation pour
Read More »

Langage C# – Le polymorphisme

Qu’est-ce que le polymorphisme ? Pour comprendre ce concept orienté objet, il est nécessaire de commencer par faire un peu d’étymologie. Ce mot est constitué de deux mots : poly qui signifie plusieurs morphisme qui signifie forme (autrement dit bloc de code) Quels sont les éléments qui peuvent être polymorphes dans une classe ? Uniquement
Read More »

Langage C# – Processus de création d’un arbre d’héritage

Présentation En conception objet, il existe deux techniques permettant de créer un arbre d’héritage : La généralisation La spécialisation Pour la compréhension de ce qui suit, un membre désigne un élément d’une classe (champs, propriétés, méthodes, …). La généralisation Lorsqu’une classe permet de créer des objets qui sont en réalité de nature différente, il est
Read More »

Langage C# – Les différentes implémentations des propriétés

Dans les classes C#, les propriétés sont des accesseurs permettant : De centraliser des blocs d’instructions, qui seront exécutés lors de la lecture ou l’écriture de la valeur dans l’attribut qu’il gère De réaliser des liaisons de données dans les logiciels, afin d’afficher des informations dans les champs des formulaires et récupérer les informations saisies
Read More »

Langage C# – Les niveaux de visibilité

1 – Visibilité des classes Définie dans un espace de nom, une classe possède deux niveaux de visibilité possibles : internal : la classe est uniquement utilisable dans le projet dans lequel elle est définie (par défaut) public : la classe est utilisable dans le projet dans lequel elle est définie, ainsi que dans les
Read More »