Pourquoi assimiler l'objet au C++ et le dégager du C ?
On peut faire du code objet en C, avec de simples structures et des méthodes qui prennent ces structures en paramètres.
Et c'est ce que j'essaye de transmettre pour ma part en "cours de C", avec des exemples simples : on a le choix entre une fonction à 4 paramètres pour représenter une personne (par son nom, prenom, age, sexe) ou une structure qu'on appelera Personne qui contiendra toutes ces informations. Généralement ils ne voient pas l'intérêt de prime abord. On décide de rajouter 1 paramètre et ils le voient déjà mieux. On leur inclut une erreur qui utilise l'age de Personne 2 au lieu de la Personne 1 en paramètre et ils y voient plus clair encore.
La plupart des étudiants qui disent "ne rien comprendre à l'objet" en ont même déjà utilisé :
FILE*.
Le problème que je vois pour ma part, c'est le même que souvent : un à priori qui fait qu'ils se braquent et ne font pas l'effort d'apprentissage.
Après oui, quand on va plus en avant on voit les mot-clé virtual, héritage etc, mais ce n'est qu'après. Et après on se rend compte qu'ils sont bien pratiques également

.
Mais on ne va bien entendu pas commencer un cours de programmation objet en C++ par un cas d'héritage en diamant..

Partager