Visual Basic
Visual Basic est un langage de programmation évènementiel de troisième génération ainsi qu'un environnement de développement intégré, créé par Microsoft pour son modèle de programmation COM.
Recherche sur Google Images :
Source image : bytescout.com Cette image est un résultat de recherche de Google Image. Elle est peut-être réduite par rapport à l'originale et/ou protégée par des droits d'auteur. |
Page(s) en rapport avec ce sujet :
- Visual Basic est un langage de développement pour créer une large gamme d'applications Windows, Web, Mobile et Office basées sur le . NET Framework.... (source : msdn.microsoft)
- Attention, le langage Visual Basic fait la différence entre les majuscules et les minuscules. Exemple 1 :... Une procédure Visual Basic est un groupe... (source : cavi.univ-paris3)
Visual Basic | |
Auteur | Microsoft |
Dernière version stable | |
Paradigme | Programmation évènementielle |
Typage | Statique, fort |
Influencé par | Quick Basic |
A influencé | Visual basic. NET, Gambas |
Dispositif d'exploitation | Microsoft Windows |
Site Web | microsoft. com |
Visual Basic (VB) est un langage de programmation évènementiel de troisième génération ainsi qu'un environnement de développement intégré, créé par Microsoft pour son modèle de programmation COM[1]. Visual Basic est directement dérivé du BASIC et permet le développement rapide d'applications, la création d'interfaces utilisateur graphiques, l'accès aux bases de données en utilisant les technologies DAO, ADO et RDO, mais aussi la création de contrôles ou objets ActiveX. Les langages de script tels que Visual Basic for Applications et sont syntaxiquement proches de Visual Basic, mais s'utilisent et se comportent de façon énormément différente[2].
Un programme en VB peut être développé en utilisant les composants apportés avec Visual Basic lui-même. Les programmes rédigés en Visual Basic peuvent aussi utiliser l'API Windows, ceci nécessitant la déclaration dans le programme des fonctions externes.
Visual Basic est un des langages les plus utilisés pour l'écriture d'applications commerciales. Dans une étude conduite en 2005, 62 pour cent des développeurs déclaraient utiliser l'une ou l'autre forme de Visual Basic. Aujourd'hui, les langages les plus utilisés dans le domaine commercial sont Visual Basic, C++, C#, Java[3].
La dernière mise à jour de Visual Basic est la version 6.0, sortie en 1998. Le support étendu Microsoft a pris fin en 2008. À partir de la version 7, le Visual Basic subit des changements substantiels le rapprochant de la plate-forme «dot Net», et qui amènent Microsoft à le commercialiser sous le nom de Visual Basic. NET.
Fonctionnalités du langage
Visual basic a été conçu pour être facile à apprendre ainsi qu'à utiliser. Le langage sert à créer des applications graphiques de façon simple, mais également de créer des applications véritablement complexes. Programmer en VB est un mélange de plusieurs tâches, comme disposer visuellement les composants et contrôles sur les formulaires, définir les propriétés et les actions associées à ces composants, et enfin ajouter du code pour ajouter des fonctionnalités. Comme les attributs et les actions reçoivent des valeurs par défaut, il est envisageable de créer un programme simple sans que le programmeur ait à écrire de nombreuses lignes de code. Les premières versions ont souffert de problèmes de performance, mais avec la naissance d'ordinateurs plus rapides et grâce à la compilation en code natif, ce problème de performance s'est estompé.
Bien que les programmes puissent être compilés en code natif depuis la version 5, ils requièrent toujours pour fonctionner la présence du moteur d'exécution ou runtime, pour une taille d'environ 2 MB. Ce moteur d'exécution est inclus par défaut dans Windows 2000 et versions supérieures, sous formes de librairies dynamiques. Pour les versions précédentes de Windows, le moteur d'exécution doit être distribué avec l'exécutable lui-même.
Dans l'IDE, les formulaires sont créés en utilisant la technique de Glisser-déposer, servant à disposer des contrôles (boîte de saisie, case à cocher, bouton, etc. ) sur le formulaire. Les contrôles possèdent tous des attributs et des gestionnaires d'évènements associés. Des valeurs par défaut sont attribuées, qui peuvent être modifiées par le programmeur. De nombreux attributs peuvent être modifiés dynamiquement lors de l'exécution, en réponse à des actions de l'utilisateur ou à des changements dans l'environnement. A titre d'exemple, il est envisageable d'ajouter du code dans le gestionnaire de l'évènement redimensionnement du formulaire, pour maintenir ce dernier en permanence au centre de l'écran ou encore d'agrandir le formulaire afin qu'il occupe toute la surface de l'écran. En ajoutant du code dans le gestionnaire de l'évènement «KeyPress» (touche enfoncée) d'une boîte de saisie, le programme pourrait automatiquement convertir les minuscules en majuscules ou inversement, ou encore interdire l'insertion de certains caractères.
Visual Basic sert à créer des exécutables (fichiers. EXE), des contrôles ActiveX ou des DLL, mais son usage premier est la réalisation d'applications Windows et l'interfaçage Web avec des bases de données. On peut utiliser des boites de dialogue simplifiées (par exemple pas de Maximize/Minimize) pour apporter des fonctionnalités de type pop-up. Les contrôles fournissent les fonctionnalités de base de l'application, les programmeurs ajoutant simplement le fonctionnel supplémentaire en insérant du code dans les gestionnaires d'évènements appropriés. A titre d'exemple, une Boîte de sélection déroulante est directement capable d'afficher sa liste et de permettre à l'utilisateur de choisir l'un de ses éléments. Un gestionnaire d'évènement est nommé quand un élément est choisi, par exemple pour remplir une liste associée.
Un composant Visual Basic peut aussi ne pas avoir d'interface utilisateur et apporter à la place des objets ActiveX aux autres programmes, au travers du Component Object Model (COM). Le langage dispose d'un mécanisme de récupération de mémoire (Ramasse-miettes), utilisant le mécanisme de «comptage de référence». Il dispose aussi d'une grande bibliothèque d'utilitaires et offre les bases du support de la Programmation Orientée Objet. Étant donné que les composants les plus communs sont inclus par défaut dans le modèle de projet standard, il est rarement indispensable pour le programmeur d'utiliser des bibliothèques additionnelles. À la différence largement d'autres langages de programmation, Visual Basic n'est généralement pas sensible à la casse (l'usage des majuscules ou des minuscules est indifférent), quoiqu'il transforme automatiquement l'écriture des mots-clés selon une convention standard et qu'il force l'écriture des variables dans le code à être semblable à l'écriture employée lors de la déclaration. Par contre, les comparaisons de chaînes de caractères sont elles sensibles à la casse par défaut, mais ce comportement est modifiable à volonté.
Le compilateur employé par Visual Basic est le même que celui d'autres langages apportés avec Visual Studio 6 (C, C++), mais des restrictions positionnées au niveau de l'environnement de développement intégré empêchent la génération de code spécifique (DLL Windows ou Threads).
Caractéristiques de Visual Basic
Visual Basic possède quelques caractéristiques inhabituelles :
- La constante booléenne True a la valeur numérique -1[4]. Ceci est dû au fait que le type booléen est codé comme un entier de 16 bits signé. Dans cette représentation, -1 est codé comme une suite de 16 «1 binaires» (la valeur booléenne True), et que 0 est codé comme 16 «0 binaires» (la valeur booléenne False) ; quand on effectue l'opération Non Logique sur un entier signé de 16 bits valant 0, on obtient -1. En d'autre termes, True = Not False. Cette caractéristique intrinsèque devient spécifiquement utile quand on effectue des opérations logiques bit à bit sur un entier, telles qu'And, Or, Xor et Not. Cette définition est aussi globalement cohérente avec les implémentations de BASIC depuis Microsoft Basic, au début des années 1970. C'est aussi en correction avec les caractéristiques des microprocesseurs de cette période.
- Les opérateurs bit à bit et les opérateurs logiques sont les mêmes. Ce n'est par contre pas le cas dans l'ensemble des langages dérivés de C (tels que Java et Perl) qui disposent d'opérateurs différenciés pour les opérations logiques et les opérations bit à bit. Ceci est aussi une caractéristique respectant les traditions du langage BASIC.
- Base de tableaux variable. Les tableaux sont déclarés en spécifiant les limites inférieures et supérieures, de la même façon qu'en Pascal ou qu'en Fortran. Il est aussi envisageable d'utiliser l'instruction «Option Base» pour spécifier l'indice de limite inférieure par défaut. L'usage de cette instruction peut prêter à confusion lors de la lecture de code Visual basic et il est préférable d'éviter son utilisation ; on lui préférera la déclaration explicite de la limite inférieure du tableau. Cette limite inférieure n'est pas limitée aux seules valeurs zéro ou un, elle peut aussi être spécifiée explicitement lors de la déclaration de la variable. Ainsi, les limites inférieures et supérieures sont toutes deux programmables. Dans d'autres langages, la limite inférieure des tableaux n'est pas programmable. Cette caractéristique n'existe pas dans Visual Basic. NET ni dans. L'instruction Option Base a été introduite dans la norme ANSI, avec la norme ANSI pour BASIC minimal, à la fin des années 1970. L'extension permettant d'utiliser la forme de DIM A (1976 TO 2002) a été introduite pour la première fois dans le BBC Basic, disponible dans le BBC micro, lui-même influencé par COMAL.
- Forte intégration avec le dispositif d'exploitation Windows ainsi qu'avec le modèle COM.
- L'arrondi bancaire est utilisé par défaut lors de la conversion de nombre réels en entiers.
- Les nombres entiers sont automatiquement convertis en nombres réels dans les expressions où apparaît l'opérateur de division normale (/) pour que la division d'un entier impair par un entier pair produise le résultat intuitivement espéré. Il existe un opérateur spécifique pour la division entière (\) qui lui tronque le résultat.
- Par défaut, si une variable n'est pas déclarée du tout ou si elle est déclarée sans spécification explicite de type, elle prend le type «Variant». Cependant, ce comportement peut être modifié par l'utilisation d'instructions DefType telles que DefInt, DefBool, DefObj, DefStr, etc. Il existe 12 instructions DefType dans Visual Basic 6.0. Un type par défaut peut être remplacé dans une déclaration spécifique en utilisant un suffixe spécial accolé au nom de la variable (# pour Double, ! pour Single, & pour Long, % pour Integer, pour String and @ pour Currency). Il est aussi envisageable d'utiliser la forme As (type) . Il est aussi envisageable de configurer VB afin qu'il exige la déclaration explicite de l'ensemble des variables, en utilisant la commande Option Explicit.
Évolution de Visual Basic
VB 1.0 a vu le jour en 1991. Le principe de connexion d'un langage de programmation avec une interface utilisateur graphique est dérivé d'un prototype nommé Tripod, développé par Alan Cooper. Microsoft avait alors contacté Cooper et ses associés pour développer un Shell programmable pour Windows 3.0, sous le nom de code Ruby (aucun lien avec le langage de programmation Ruby).
Tripod ne contenait aucun langage de programmation et Ruby contenait seulement un processeur de commandes rudimentaire suffisant pour tenir le rôle d'un Shell Windows. Finalement, Microsoft décida d'utiliser le simple Program Manager comme Shell pour Windows 3.0, à la place de Ruby, et de combiner Ruby avec le langage Basic pour créer Visual Basic.
Ruby a apporté la partie «Visual» de Visual basic – L'éditeur de fenêtres et les outils d'édition – associé avec la possibilité de charger des librairies dynamiques, contenant des contrôles additionnels (qui s'appelaient alors des «gizmos»). Les extensions «gizmos» de Ruby devinrent ensuite l'interface VBX.
Visual Basic, de VB1 à VB6
- Le projet ‘Thunder' est lancé
- Visual Basic 1.0 (mai 1991) pour Windows est présenté au Comdex/Windows à Atlanta, Géorgie.
- Visual Basic 1.0 pour DOS est présenté en septembre 1992. Le langage n'était pas complètement compatible avec Visual Basic pour Windows, car il était en fait la nouvelle version des compilateurs Microsoft BASIC pour DOS, Quick Basic et BASIC Professional Development System. L'interface était en mode texte et utilisait le jeu de caractères ASCII étendu pour simuler une interface graphique.
- Visual Basic 2.0 est présenté en novembre 1992. L'environnement de développement était plus facile à utiliser et la vitesse avait été perfectionnée. Un fait marquant était que les formulaires étaient devenus des objets instanciables, posant ainsi le concept de base de modules de classe, qui devinrent plus tard disponibles dans VB4.
- Visual Basic 3.0 fut présenté pendant l'été 1993, disponibles en édition Standard ou Professionnelle. VB3 intégrait la version 1.1 du moteur de bases de données Microsoft Jet, qui pouvait lire et écrire les bases de données Jet (ou Access) 1. x.
- Visual Basic 4 (août 1995) a été la première version qui pouvait générer des programmes Windows 16 et/ou 32 bits. Cette version introduisait aussi la possibilité d'écrire des classes sans interface utilisateur. Des incompatibilités entre les différentes versions de VB4 causèrent des problèmes d'installation et de fonctionnement.
- La version 5.0 de Visual Basic, sortie en 1997 ne fonctionnait plus qu'avec les versions 32 bits de Windows. Les programmeurs préférant développer des applications 16-bits pouvaient importer les programmes de VB4 vers VB5, et vice versa. Visual Basic 5.0 a aussi introduit la possibilité de créer des contrôles utilisateurs personnalisés mais aussi la possibilité de générer des exécutables Windows natifs, ce qui perfectionnait la vitesse d'exécution des programmes effectuant énormément de calculs.
- Visual Basic 6.0 (mi-1998) a apporté de nombreuses améliorations dans différents domaines, surtout la possibilité de créer des applications Web-based. VB6 n'est plus supporté par Microsoft depuis mars 2008.
- Microsoft a cessé le support grand public pour Visual Basic 6.0 le 31 mars 2005. Le support étendu a pris fin en mars 2008[5]. En réaction, La communauté des utilisateurs Visual Basic a fait part de ses préoccupations à ce sujet et a incité les utilisateurs à signer une pétition pour permettre de maintenir le produit en vie. À cette date[Lorsque ?], Microsoft a refusé de modifier sa position à ce sujet. Ironiquement, il fut révélé au même moment que le nouvel Anti-Spyware de Microsoft, Microsoft AntiSpyware (racquis à GIANT Software Company) était rédigé en Visual Basic 6.0. Windows Defender Beta 2 a été réécrit en C++/CLI. Il est complexe de dire quel impact pourrait avoir cette décision sur les futures offres Microsoft, si la vision se faisait jour que des applications pérennes ne peuvent être rédigées avec des produits Microsoft pour cause d'obsolescence programmée.
Langages dérivés
Microsoft a développé des langages dérivés, pour des usages de :
- Visual Basic pour Applications (VBA) est inclus dans de nombreuses applications Microsoft (Microsoft Office) mais aussi dans de nombreux produit tiers tels qu'AutoCAD, WordPerfect Office 2002, etc. Il y a de petites inconsistances dans la façon dont VBA est implémenté dans les différentes applications, mais VBA reste un langage particulièrement proche de VB6 et utilise le même moteur d'exécution.
- est le langage par défaut pour Active Server Pages (ASP) et est parfois utilisé pour faire du scripting Windows mais aussi du scripting web côté client. Quoiqu'il ressemble syntaxiquement à VB, c'est un langage différent et scindé, qui utilise vbscript. dll pour son exécution au lieu du moteur d'exécution VB. Ces différences peuvent affecter les performances d'un site web ASP. ASP et VBScript ne doivent pas être confondus avec ASP. NET, qui utilise Visual basic. NET ou tout autre langage destiné au . NET Common Language Runtime (CLR).
- Visual Basic. NET est le successeur désigné de Microsoft à Visual Basic 6.0, et est membre de la plate-forme Microsoft. NET. Ce dernier se compile et s'exécute sur le framework. NET. Visual Basic. NET n'est pas rétro compatible avec VB6. Un outil de conversion existe, mais pour de nombreux projets, la conversion automatique est impossible.
Performances et autres problèmes
Les premières versions de Visual Basic (avant la version 5.0) généraient seulement du P-Code ou pseudo code. Visual Basic 5 et 6 sont capables de compiler en P-code ou en code natif, au choix de programmeur. Le P-code est interprété par le runtime du langage, aussi nommé machine virtuelle. L'avantage réside dans la portabilité et la petitesse du code. Cependant, ceci ralentit le plus souvent l'exécution des programmes, car cela ajoute une couche supplémentaire d'interprétation. Il est envisageable de construire de petites portions de codes ou certains algorithmes qui s'exécutent plus rapidement en P-code qu'en code natif.
Les applications Visual Basic requièrent la présence du Microsoft Visual Basic Runtime MSVBVMxx. DLL, où xx est le numéro de version, soit 50 ou 60. MSVBVM60. DLL est apporté en standard avec l'ensemble des versions de Windows suivant Windows 98, tandis que MSVBVM50. DLL était présents avec l'ensemble des éditions de Windows postérieures à Windows 95. Ainsi, pour une machine sous Windows 95, il était obligatoire que les programmes Visual basic soient distribués avec la Dll appropriée.
Visual Basic est critiqué pour sa gestion mémoire peu performante et pour la possibilité qu'il offre de pouvoir construire du code utilisant des constructions peu académiques, pouvant donner de mauvaises habitudes de programmation et permettant d'écrire du code peu performant. En Visual basic, il peut quelquefois être complexe de dire si une variable est une référence à un objet ou bien l'objet lui-même.
Dans le même ordre d'idée, il est quelquefois complexe de dire si une opération va copier la référence d'un objet ou bien copier l'entièreté de l'objet. Cette ambiguïté peut être la cause de comportements non prévus, ou résulter en un programme aux piètres performances.
Exemples de code
Voici quelques exemples de code Visual Basic :
Fonction qui retourne l'aire d'un cercle :
Private Function AireDuCercle(Rayon As Double) As Double Const PI = 3.14159265358979 AireDuCercle = PI * (Rayon ^ 2) End Function
Programme affichant une fenêtre avec les mots «Hello World» :
Sub Main() MsgBox("Hello World") End Sub
Démarrer une application tierce depuis Visual basic :
Private Sub Run_Notepad() Shell "%SystemRoot%\notepad.exe", vbMinimizedNoFocus 'ouvre Notepad, car Notepad est dans le répertoire System '%SystemRoot% est une variable d'environnement contenant le chemin du répertoire Windows System. End Sub
Développement d'interfaces utilisateurs graphiques en Visual Basic 6.0
Visual Basic sert à développer des interfaces utilisateurs graphiques particulièrement riches. De nombreux types de logiciels peuvent être créés avec peu d'efforts, tels que (liste non exhaustive) : Logiciel d'édition d'images, éditeurs de texte et applications de bases de données.
Notes et références de l'article
- ↑ VB est remplacé par Visual Basic. NET, cependant la conversion d'applications depuis VB vers VB. NET peut ne pas être triviale. [1][pdf]. )
- ↑ Par exemple : S="ABC" : S = S & "DEF" : S = S & "GHI" est une pratique courante en VB, mais peut causer de graves ennuis si utilisée sur une page ASP, car les constantes statiques sont traitées différemment par les deux langages.
- ↑ (en) Computerworld Development Survey gives nod to C#
- ↑ Dans la majorité des langages, True est représenté par une valeur numérique différente de zéro, fréquemment 1 ou -1
- ↑ (en) Product Family Life Cycle Guidelines for Visual Basic 6.0
- (fr) Catégorie Visual Basic de l'annuaire dmoz
- (fr) FAQ Visual basic
Liens externes en anglais
- (mul) Site officiel
- (en) Catégorie Visual Basic de l'annuaire dmoz
Recherche sur Amazone (livres) : |
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 17/03/2009.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.