Concepts de Visual Basic



Pour comprendre le processus de développement d'une application, il est utile d'assimiler certains des concepts essentiels sur lesquels est fondé Visual Basic. Comme il s'agit d'un langage de développement Windows, il convient également de s'être préalablement familiarisé avec l'environnement Windows.

Eléments clés de Windows : fenêtres, événements et messages

Un ouvrage complet serait nécessaire pour décrire les mécanismes internes de Windows. La connaissance approfondie de tous ces détails techniques n'est cependant pas nécessaire. Une vision simplifiée de la mécanique de fonctionnement de Windows s'articulerait autour de trois concepts essentiels : les fenêtres, les événements et les messages.

Une fenêtre est simplement une zone rectangulaire dotée de ses propres limites. Exemples de fenêtre: une fenêtre Explorateur dans Windows 95, une fenêtre de document dans un programme de traitement de texte, ou encore une boîte de dialogue qui apparaît pour rappeler un rendez-vous important. S'il s'agit là des exemples les plus courants, il existe bien d'autres types de fenêtre. Un bouton de commande est une fenêtre. Les icônes, les zones de texte, les boutons d'option et les barres de menus constituent tous des fenêtres.

Le système d'exploitation Microsoft Windows gère ces nombreuses fenêtres en affectant à chacune d'elles un numéro d'identification unique (descripteur de fenêtre ou hWnd). Le système surveille en permanence chacune de ces fenêtres de façon à déceler le moindre événement ou signe d'activité. Les événements peuvent être engendrés par des actions de l'utilisateur (notamment lorsque celui-ci clique un bouton de la souris ou appuie sur une touche), par contrôle programmé, voire même par des actions d'une autre fenêtre. Chaque fois qu'un événement survient, un message est envoyé au système d'exploitation. Celui-ci traite le message et le diffuse aux autres fenêtres. Chacune d'elles peut alors exécuter l'action appropriée de la manière prévue pour ce type de message (notamment, se redessiner si elle n'est plus recouverte par une autre fenêtre). Comme le programmeur peut l'imaginer, il n'est pas simple de faire face à toutes les combinaisons possibles de fenêtres, d'événements et de messages. Heureusement, Visual Basic épargne au programmeur la gestion de tous les messages de bas niveau. La plupart de ceux-ci sont automatiquement gérés par Visual Basic tandis que d'autres sont mis à disposition sous forme de procédures Event afin de faciliter la tâche au programmeur. Le programmeur peut aussi écrire rapidement des applications puissantes sans se préoccuper de détails inutiles.

Description du modèle événementiel

Dans les applications traditionnelles ou " procédurales ", c'est l'application elle-même, et non un événement, qui contrôle les parties du code qui sont exécutées, ainsi que leur ordre d'exécution, appelant les procédures au fur et à mesure des besoins. Dans une application événementielle, le code ne suit pas un chemin prédéterminé. Différentes sections du code sont exécutées en réaction aux événements. Ceux-ci peuvent être déclenchés par des actions de l'utilisateur, par des messages provenant du système ou d'autres applications, voire même par l'application proprement dite. L'ordre de ces événements détermine l'ordre d'exécution du code. Le chemin parcouru dans le code de l'application est donc différent à chaque exécution du programme.

Comme il est impossible de prévoir l'ordre des événements, le code doit émettre certaines hypothèses quant à " l'état du système " au moment de son exécution. Lorsque le programmeur élabore des hypothèses ( par exemple quand il suppose qu'un champs de saisie doit contenir une valeur avant l'exécution de la procédure chargée de traiter cette valeur ), le programmeur doit structurer son application de telle sorte que cette hypothèse soit toujours vérifiée ( par exemple en désactivant le bouton de commande qui démarre la procédure aussi longtemps que le champs de saisie ne contient pas de valeur ).

Développement interactif

Le processus traditionnel de développement des applications peut être divisé en trois étapes distinctes : l'écriture, la compilation et la vérification du code. Contrairement aux langages traditionnels, Visual Basic adopte une approche interactive dans laquelle disparaissent les distinctions entre ces trois tapes.

Dans la plupart des langages, une erreur commise dans l'écriture du code n'apparaît qu'au moment de la compilation de l'application. Le programmeur doit ensuite rechercher et corriger l'erreur avant de commencer le cycle de compilation, et répéter ce processus pour chaque erreur. Visual Basic procède de manière totalement différente : il interprète le code au fur et à mesure de sa saisie, interceptant et signalant immédiatement la plupart des erreurs de syntaxe et des fautes d'orthographe. C'est un peu comme si un expert était assis à côté du programmeur, vérifiant chaque ligne de code qu'il introduit.

Outre la détection immédiate des erreurs, Visual Basic compile également partiellement le code au moment de sa saisie. Lorsque le programmeur est prêt à exécuter et vérifier son application, la compilation est déjà presque pratiquement terminée. Si le compilateur découvre une erreur, il l'affiche en surbrillance dans votre code. Le programmeur peut alors corriger l'erreur et poursuivre la compilation sans devoir recommencer depuis le début.