Mais, si ce n'est que cela, direz-vous, ne serait-ce pas tout bêtement donner un nouveau nom à une vieille marmite ? Car après tout, construire des variables par agglomération de types simples, il y a très longtemps qu'on sait le faire ! Depuis les langages traditionnels et les bonnes vieilles données structurées ! Les objets ne seraient-ils donc pas tout bêtement des données structurées rebaptisées autrement pour être mieux vendues ?
Eh bien non, comme on l'a déjà dit, les objets ne sont pas que cela. Ils sont certes des données structurées. Mais ils sont des données structurées avec deux possibilités supplémentaires, ce qui change complètement la donne.
les objets ne sont pas que des propriétés ; il sont aussi des méthodes. Cela veut dire que si dans un langage traditionnel, on sépare les données et les traitements sur ces données, en programmation objet, à l'inverse, on fabrique des bidules (les objets) qui regroupent les données (les propriétés) et les actions sur ces données (les méthodes). Visual Basic, dans la mesure où il fournit le moyen de construire de tels objets, est un langage objet.
les objets possèdent une souplesse remarquable, qui se traduit notamment par la notion d'héritage. Je crée une classe "mère", puis des classes "filles" qui héritent de toutes les caractéristiques de la classe mère, plus d'autres, puis des classes petites-filles, qui héritent des caractéristiques de la classe fille, plus d'autres, etc.
Ainsi, par exemple, je crée la classe "animal", puis les classes filles "reptile", mammifère", "poisson", etc. qui possèdent toutes les propriétés et méthodes des animaux, plus d'autres spécifiques. Et ensuite, je crée les classes "félin", "canin", "rongeur", etc, qui héritent les propriétés et méthodes des mammifères, en ajoutant des propriétés et méthodes propres et ainsi de suite. Ca ne paraît pas comme ça, mais c'est une manière de procéder très souple et très puissante pour modéliser des données complexes.
Or, Visual Basic ne donnant pas le moyen de gérer l'héritage, ce n'est pas un vrai langage objet.
D'où le titre ambigu du titre du premier chapitre de ce cours : "VB, un langage (presque) objet". La boucle est ainsi bouclée, tout est dans tout et réciproquement