Visual Basic ist eine imperative, objektorientierte Programmiersprache von Microsoft. Seit 2002 existiert sie als Visual Basic .NET auf dem .NET-Framework, während das klassische VB6 (1998) nur noch als Legacy gilt. Der Name steht zugleich für die Sprachfamilie, zu der auch VBScript und VBA gehören.
Grundgerüst und Compiler
vbc.exe /target:exe /out:app.exe Program.vb
Der Kommandozeilen-Compiler heißt vbc (Visual Basic Compiler) und ist Teil des .NET SDK. In Visual Studio wird die Sprache mit MSBuild gebaut. Jede Quelldatei beginnt mit Imports-Anweisungen, Code steht in Module oder Class-Blöcken:
Imports System
Module Program
Sub Main()
Console.WriteLine("Hallo Welt")
End Sub
End Module
Wichtige Sprachkonstrukte
- Variablen:
Dim zahl As Integer = 42—Dimdeklariert,Aslegt den Typ fest. - Kontrollfluss:
If/ElseIf/Else,Select Case,For … Next,For Each … In,While … End While,Do … Loop. - Prozeduren:
Sub(kein Rückgabewert) undFunction(mitReturn). - Fehlerbehandlung:
Try/Catch/Finally. - Objektorientierung:
Class,Inherits,Implements,Interface,Shared,Overrides. - Strenge Modi:
Option Explicit On(Variablen müssen deklariert sein) undOption Strict On(keine stillen Typumwandlungen).
Moderne VB-.NET-Features
Auch in neueren Versionen (VB 16.9, aktuell VB 17.x) ergänzt Microsoft die Sprache: LINQ für Datenabfragen, Async/Await für asynchrone Methoden, Nullable-Werttypen und den My-Namespace mit Kurzzugriffen (My.Computer, My.Settings). Visual Basic .NET bleibt vollständig .NET-kompatibel und wird von Microsoft weiterhin gepflegt — anders als VB6.
VB6-Legacy
Visual Basic 6.0 (1998) war eine eigenständige IDE mit Formular-Designer und der Laufzeitbibliothek MSVBVM60. VB6-Programme laufen nicht nativ unter .NET und werden nicht mehr unterstützt; eine Migration in VB .NET ist meist aufwendig. Auch andere Hersteller pflegen proprietäre, IDE-gebundene Business-Sprachen — SAPs ABAP ist ein prominentes Beispiel.
Verwandte Grundlagen
Eng verwandt sind VBA (Office-Automation) und VBScript (Windows-Skripting). Die .NET-Schwester C# teilt sich die Laufzeit, und PowerShell ist die moderne Microsoft-Skriptsprache.