La programmation orientée objet

Précédent Suivant

Comprendre la programmation orientée objet n'est pas chose simple pour le programmeur débutant. Beaucoup d'autres avant moi se sont essayé à l'expliquer avec plus ou moins de succès. Je vais essayer de faire de mon mieux, mais si vous ne comprenez rien alors passez aux chapitres suivants. Avec un peu de pratique, ça deviendra plus clair...

Pour réaliser un programme complexe, il est toujours plus aisé de le diviser en petites routines simples. Par exemple, pour écrire un texte à l'écran, les langages évolués vous fournissent une fonction du genre EcrireTexte à laquelle il suffit de passer en argument la chaîne de caractères que vous désirez afficher. Vous n'avez pas à vous préoccuper de la façon dont le traitement s'effectue en interne (quels sont les pixels à allumer par exemple).

C'est ce qu'on appelle l'abstraction, c'est à dire que vous pouvez appeler des sous-programmes sans savoir comment ils fonctionnent en interne.

Vous pouvez vous même créer vos propres fonctions, par exemple, pour mettre en majuscule la première lettre d'un mot. Si vous développez beaucoup de programmes, vous pouvez alors avoir besoin de cette fonction dans plusieurs d'entre eux. Au lieu de constamment réécrire cette fonction vous l'insérez dans une librairie de fonction qu'il vous suffit d'inclure dans chacun de vos programmes qui en a besoin.

Vous pouvez ainsi réutiliser des parties de code et gagner en productivité. Ce qui est fait avec le code peut l'être également avec les données. Admettons que vos programmes affichent des dates, ils doivent donc charger en mémoire l'intitulé des différents jours de la semaine (Lundi, Mardi...). Cette liste de chaînes peut elle aussi être intégrée à une librairie.

Le programmeur dispose alors avec ses librairies de plusieurs dizaines d'outils différents (les fonctions) et de matières premières (les données). Certaines données sont indissociables de certaines procédures et inversement. Par exemple, la fonction AfficheJour utilise la liste des intitulés des jours de la semaine. Il serait logique de regrouper ces données et ce code. C'est là l'idée de la programmation orienté objet. Un objet est en fait un ensemble de données et de procédures. Nous pourrions par exemple avoir un objet Calendrier, qui posséde en interne une liste des intitulés des jours et des mois, ainsi qu'une fonction AfficherDate (qu'on appelle méthode dans la terminologie de la P.O.O.). Cet objet est indépendant, c'est à dire qu'il posséde tout ce qu'il faut pour fonctionner.

V.B.A. est un langage orienté objet. Il mets à notre disposition toutes une série d'objets divers. Par exemple, les contrôles que nous avons déposés sur la fiche sont des objets. Ils possédent des données (l'intitulé d'un bouton par exemple) et du code (la fonction qui permet de dessiner le bouton à l'écran). Certaines données sont accessibles par l'intermédiaire de propriétés (la propriété Caption nous permet de modifier l'intitulé du bouton), alors que d'autres nous sont cachées (des variables servant à stocker les résultats intermédiaires de certaines opérations par exemple) car elles ne présentent pas d'intêret pour nous.

Cette architecture permet de créer des programmes complexes de façon simple et rapide. Le programmeur se contente d'assembler plusieurs composants comme dans un jeu de mécano.

AutoCAD grace à la technologie ActiveX, mets à notre disposition plusieurs objets que nous pouvons manipuler depuis un programme V.B.A.

V.B.A. n'est pas le seul langage de programmation capable de manipuler les ActiveX. Vous pouvez créer des programmes en langage Pascal (avec Delphi), en C++ ou en Java.

Précédent Sommaire Suivant