software.wikisort.org - Langage_de_programmation

Search / Calendar

Visual Basic (VB) est un langage de programmation événementielle 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, ainsi que la création de contrôles ou objets ActiveX. Les langages de script tels que Visual Basic for Applications et VBScript sont syntaxiquement proches de Visual Basic, mais s'utilisent et se comportent de façon sensiblement différente[2].

Visual Basic
Date de première version 1991
Paradigme Programmation événementielle
Développeur Microsoft
Dernière version 6.0 (1998)
Typage Statique, fort
Influencé par Quick Basic
A influencé Visual Basic .NET, Gambas
Système d'exploitation Microsoft Windows
Licence Propriétaire
Site web microsoft.com

Un programme en VB peut être développé en utilisant les composants fournis avec Visual Basic lui-même. Les programmes écrits en Visual Basic peuvent aussi utiliser l'API Windows, ceci nécessitant la déclaration dans le programme des fonctions externes.

Dans une étude conduite en 2005, 62 % des développeurs déclaraient utiliser l'une ou l'autre forme de Visual Basic. Selon la même étude, les langages les plus utilisés dans le domaine commercial sont Visual Basic, C++, C# et 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 et à utiliser. Le langage permet de 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 possible 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 l'apparition 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 MB. Ce moteur d'exécution est inclus par défaut dans Windows 2000 et versions ultérieures sous forme de bibliothèques 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, permettant de 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. Par exemple, il est possible d’ajouter du code dans le gestionnaire de l’événement redimensionnement du formulaire, afin de maintenir celui-ci 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 permet de 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 boîtes de dialogue simplifiées (par exemple pas de Maximize/Minimize) pour fournir 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. Par 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 appelé lorsqu’un élément est sélectionné, par exemple pour remplir une liste associée.

Un composant Visual Basic peut aussi ne pas avoir d’interface utilisateur et fournir à 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 également d’une grande bibliothèque d’utilitaires et offre les bases du support de la Programmation Orientée Objet. Dans la mesure où les composants les plus communs sont inclus par défaut dans le modèle de projet standard, il est rarement nécessaire pour le programmeur d’utiliser des bibliothèques additionnelles. À la différence de beaucoup d’autres langages de programmation, Visual Basic n’est en général pas sensible à la casse (l’usage des majuscules ou des minuscules est indifférent), bien qu’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 identique à l’écriture employée lors de la déclaration. En revanche, les comparaisons de chaînes de caractères sont elles sensibles à la casse par défaut, mais ce comportement est modifiable à volonté.


Caractéristiques de Visual Basic


Visual Basic possède quelques caractéristiques inhabituelles :


É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 appelé 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 uniquement 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 fourni la partie « Visual » de Visual Basic – l’éditeur de fenêtres et les outils d’édition – associé avec la possibilité de charger des bibliothèques dynamiques, contenant des contrôles additionnels (qui s’appelaient alors des « gizmos »). Les extensions « gizmos » de Ruby devinrent par la suite l’interface VBX.


Visual Basic, de VB1 à VB6



Langages dérivés


Microsoft a développé des langages dérivés, pour des usages de langages de Script :


Performances et autres problèmes


Les premières versions de Visual Basic (avant la version 5.0) généraient uniquement du P-Code ou pseudo code. Visual Basic 5 et 6 sont capables de compiler en P-code ou en code natif, au choix du programmeur. Le P-code est interprété par le runtime du langage, aussi appelé machine virtuelle. L’avantage réside dans la portabilité et la petitesse du code. Cependant, ceci ralentit généralement l’exécution des programmes, car cela ajoute une couche supplémentaire d’interprétation. Il est possible 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 fourni en standard avec toutes les versions de Windows suivant Windows 98, alors que MSVBVM50.DLL était présents avec toutes les é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 parfois être difficile 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 parfois difficile 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 renvoie (calcule) 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

Programmation objet :

Imports System.Net.Mail

Public Class Form1

    Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CBaccept.CheckedChanged
        Button1.Visible = True
        If CBaccept.Checked = False Then
            Button1.Visible = False
        End If
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If TBnom.Text = "" Or TBmail.Text = "" Or TBpasse.Text = "" Or TBcpasse.Text = "" Or TBprenom.Text = "" Or TBpseudo.Text = "" Or TBcandidature.Text = "" Or CBaccept.Checked = False Then
            MsgBox("Vous devez tout remplir correctement")
            Exit Sub
        End If

        If TBpasse.Text <> TBcpasse.Text Then
            MsgBox("le mot de passe ne correspond pas")
            Exit Sub
        End If

        Dim Nom = TBnom.Text
        Dim Prenom = TBprenom.Text
        Dim Mail = TBmail.Text
        Dim Passe = TBpasse
        Dim Candidature = TBcandidature
        Dim Pseudo = TBpasse
        Dim Message = "Test" & Pseudo & vbCrLf & "candidature " & Candidature & vbCrLf & "prenom" & Prenom

        Dim MyMailMessage As New MailMessage()
        Dim SMTPServer As New SmtpClient("exemple@gmail.com")

        MyMailMessage.From = New MailAddress("exemple@gmail.com")
        MyMailMessage.To.Add("exemple@gmail.com")
        MyMailMessage.Subject = ("sujet du message")
        MyMailMessage.Body = ("Message")

        SMTPServer.Port = ("587") 'Port
        SMTPServer.Credentials = New System.Net.NetworkCredential("Adresse_Expediteur", "Mot_de_passe_expediteur")
        SMTPServer.EnableSsl = True

        SMTPServer.Send(MyMailMessage) 'Envoi

    End Sub
End Class

Développement d’interfaces utilisateurs graphiques en Visual Basic 6.0


Visual Basic permet de développer des interfaces utilisateurs graphiques très riches. De nombreux types de logiciels peuvent être créés rapidement, tels que (liste non exhaustive) : logiciel d’édition d’images, éditeurs de texte et applications de bases de données.


Annexes


Sur les autres projets Wikimedia :


Articles connexes



Liens externes



Bibliographie



Notes et références


  1. VB est remplacé par Visual Basic .NET, cependant la conversion d'applications depuis VB vers VB .NET peut ne pas être triviale. [PDF].)
  2. 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.
  3. (en) « Computerworld Development Survey gives nod to C# »(Archive.orgWikiwixArchive.isGoogle • Que faire ?)]
  4. Dans la plupart des langages, True est représenté par une valeur numérique différente de zéro, souvent 1 ou -1
  5. (en) Product Family Life Cycle Guidelines for Visual Basic 6.0


Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article ne cite pas suffisamment ses sources ().

Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références »

En pratique : Quelles sources sont attendues ? Comment ajouter mes sources ?


На других языках


- [fr] Visual Basic

[ru] Visual Basic

Microsoft Visual Basic — язык программирования, а также интегрированная среда разработки программного обеспечения, разрабатываемые корпорацией Microsoft. Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка — языка BASIC, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Интегрированная среда разработки VB включает инструменты для визуального проектирования пользовательского интерфейса, редактор кода с возможностью IntelliSense и подсветкой синтаксиса, а также инструменты для отладки приложений.



Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.org внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2025
WikiSort.org - проект по пересортировке и дополнению контента Википедии