close

Visual Basic .NET

Zur Navigation springen Zur Suche springen
Programmiersprache Visual Basic .NET
VB.NET-Logo.svg
AutorMicrosoft
Entstehungsdatum2003 [1]
Letzte Version16.0 ( 2019 )
VerwendungszweckGenerisch
ParadigmenMulti-Paradigma: Strukturiert , Imperativ , Objektorientiert , Funktional , Ereignisgesteuert
Tippenlaut
Gängige Erweiterungenvb, resx, vbproj, sln
Beeinflusst vonVisual Basic
Referenzimplementierung
ImplementierungDebugger und Compiler
BetriebssystemWindows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Linux, macOS
LizenzApache-Lizenz
Webseitemsdn.microsoft.com/it-it/vstudio/hh388573

Visual Basic .NET ist die neue Version von Visual Basic . Die wichtigsten neuen Features dieser neuen .NET Framework -Entwicklungssprache sind, dass sie objektbasiert und kompiliert ist.

Visual Basic ist, wie sein C#-Pendant , ein Knotenpunkt für viele vergangene Microsoft-Entwicklungsinitiativen und -technologien wie: COM und ActiveX , ersetzt durch vollständig verwaltete Objektklassen und Assemblies : denn managed (von engl. managed ) bedeutet, dass die Speicherverwaltung erfolgt autonom vom Garbage Collector verwaltet . Mit Visual Basic ist es möglich, zu erstellen: Windows Forms-Anwendungen, Web, Dienste, COM-Komponenten, MQ, Web-Service und auch für mobile Geräte durch die Verwendung der Compact-Framework -Bibliotheken bestimmt .

Microsoft hat angekündigt, dass es keine größeren Updates für Visual Basic .NET mehr geben wird.

Visual Basic ist eine der Hauptsprachen von Visual Studio, Microsofts Suite für Programmierer, die vollständig auf dem .NET Framework basiert.

Geschichte

Visual Basic .NET (VB 7)

Visual Basic .NET (intern Version 7.0) wurde 2002 geboren. Es war das erste Visual Basic, das auf dem .NET 1.0 Framework entwickelt wurde. Obwohl es kommerziell der Nachfolger von VB6 ist, ist die einzige Gemeinsamkeit in Wirklichkeit die VB-ähnliche Syntax.

Diese Version unterstützte das objektorientierte Programmierparadigma mit Funktionen wie Vererbung, Polymorphismus und Kapselung. Wir fügen eine erweiterte Speicherverwaltung (dank Garbage Collector ) und Zeiger hinzu, alles in einer vollständig verwalteten und stark typisierten Umgebung .

Zusätzlich zu klassischeren Typen und Bibliotheken, die in jeder Sprache zu finden sind, wie IO, Zeichenfolgenformatierung, mathematische und statistische Berechnungen usw., unterstützte diese Version der Sprache bereits Threading, Reflektion, anpassbare Attribute, verteilte Programmierung über Remoting und Programmierung von COM-Objekten .

Visual Basic .NET 2003 (VB 7.1)

Mit der Version des Frameworks 1.1 hat Microsoft eine neue Version von Visual Studio (Visual Studio 2003) und damit die neuen Versionen der enthaltenen Sprachen veröffentlicht, darunter Visual Basic .NET 2003 (intern Version 7.1). Neben der Verbesserung einiger Bibliotheken in Bezug auf die Leistung, wie z. B. dem Hintergrundcompiler, wurde in dieser Version die Unterstützung für das .NET Compact Framework hinzugefügt, wodurch Programmierer Anwendungen für mobile Geräte entwickeln können .

Visual Basic 2005 (VB 8)

2005 wurde mit der Version 2.0 des Frameworks die neue Version von Visual Basic veröffentlicht, mit dem Handelsnamen Visual Basic 2005 , der erstmals die Endung .NET verlässt. Viele neue Programmierfunktionen wurden in dieser Version hinzugefügt, darunter:

  • die Generika
  • benutzerdefinierte Ereignisse
  • neue Kernel-Objekte für die Thread-Synchronisation
  • partielle Klassen, mit der Partial Class- Anweisung
  • den My -Pseudo-Namespace , der den Zugriff auf viele häufig verwendete Methoden vereinfacht
  • der globale Namespace-Qualifizierer ( global )
  • XML-Kommentare zum Kommentieren Ihrer Methoden
  • Bedienerüberlastung
  • die Definition neuer Typen einschließlich unsigned und nullable .

Außerdem sind neue Schlüsselwörter erschienen:

  • Fortsetzen
  • Ist nicht
  • Mein
  • TryCast
  • Verwenden

Darüber hinaus wurden Hunderte von Updates an den in den verschiedenen Namespaces verteilten Framework-Methoden wie IO, Security, Cryptography, Threading und anderen durchgeführt.

Visual Basic 2008 (VB 9)

Visual Basic 2008 wurde früh am 19. November 2007 veröffentlicht und mit der Veröffentlichung von Visual Studio 2008 in .NET 3.5 Framework implementiert . Diese Version der Sprache fügt innovative Funktionen wie XML - und LINQ - Literale hinzu . Für die LINQ-Unterstützung wurden viele neue Funktionen eingeführt, darunter anonyme Typen , Typrückschluss, Lambda -Ausdrücke und Erweiterungsmethoden. Die Verwendung der neuen Frameworks, die von Version 3.0 von .NET implementiert wurden, wurde ebenfalls integriert, darunter:

  • Entity Framework , mit dem Sie mit einem Objektmodell auch auf Datenbanken arbeiten können;
  • Windows Presentation Foundation , ein neuer Namespace, der Klassen zum Entwerfen von Fenstern oder Web-Benutzeroberflächen enthält;
  • Windows Communication Foundation , ein neuer Namespace, der die Verwendung verteilter Programmiertechniken erleichtert;
  • Workflow Foundation , um Workflow-Anwendungen oder -Assemblys zu erstellen, die dann in jeder .NET-Anwendung implementiert werden können;
  • Cardspace, eine neue Technologie zur Zentralisierung von Logins auf Websystemen.

Darüber hinaus wurde die Verwendung der Sprache durch die Verwendung der neuen Entwicklungs - IDE von Visual Studio 2008 erweitert , um Anwendungen mit WPF - basierter Silverlight -Technologie zu erstellen .

Visual Basic 2010 (VB 10)

Im April 2010 veröffentlichte Microsoft Visual Basic 2010.

Visual Basic 2012 (VB 11)

Visual Basic 2012 wurde zusammen mit dem .NET Framework 4.5 veröffentlicht.

Visual Basic 2015 (VB 14)

Visual Basic 2015 (Codename VB „14.0“) wurde zeitgleich mit der Veröffentlichung von Visual Studio 2015 veröffentlicht.

Visual Basic 2017 (VB 15)

Visual Basic 2017 (Codename VB „15.0“) wurde zeitgleich mit der Veröffentlichung von Visual Studio 2017 (15.33, 15.5, 15.8) veröffentlicht. Es führt neue Refactoring - Techniken ein, mit denen Sie Ihren Quellcode mit einer einzigen Aktion organisieren können. [2] [3]

Visual Basic 2019 (VB 16)

Visual Basic 2019 (Codename VB „16.0“) wurde zeitgleich mit der Veröffentlichung von Visual Studio 2019 veröffentlicht. Es ist die erste Version von Visual Basic, die sich auf das neue Microsoft .NET Core- Framework konzentriert . [3]

Beispiele

Hallo, Welt

Beispiel im klassischen Visual Basic (6.0 und früher):

Private  Sub  Command1_Click () 
   MsgBox  "Hallo, Welt!" 
Ende  Sub

Beispiel in Visual Basic .NET mit der neuen Klasse MessageBox:

Private  Sub  button1_Click ( ByVal  sender  As  System . Object ,  ByVal  und  As  System . EventArgs )  Handles  button1 . Klicken Sie 
   auf MessageBox . Show ( "Hello, world!" ,  "Beispieltitel" ,  MessageBoxButtons . OK ,  MessageBoxIcon . Information ) 
End  Sub

Beispiel in Visual Basic .NET mit der alten Msgbox-Funktion:

Private  Sub  button1_Click ( ByVal  sender  As  System . Object ,  ByVal  und  As  System . EventArgs )  Handles  button1 . Klicken Sie 
   auf Msgbox ( "Hello, world" ) 
End  Sub

Das obige Beispiel zeigt die neue Syntax, die die klassische MsgBox ersetzt . Die Anzeige der Nachricht erfolgt durch die Show - Methode der MessageBox -Klasse . Beachten Sie, dass es normalerweise zum Aufrufen einer Methode erforderlich ist, eine Instanz einer Klasse zu erstellen. In diesem Fall kann die Methode, die vom Typ Shared (d. h . shared ) ist, jedoch auch aufgerufen werden, ohne die Klasse zu instanziieren. Die alte MsgBox- Syntax wird aber auch von der neuen Entwicklungsplattform unterstützt. Eine Klasse zu instanziieren bedeutet , ein Objekt des von der Klasse definierten Typs zu erstellen .

Die Kompatibilität zwischen der klassischen Version (VB 6) und den neuen VB.NET-Versionen wird durch die Microsoft.VisualBasic- Bibliothek gewährleistet . Diese Bibliothek wurde entwickelt, um einen schrittweisen Übergang vom alten Programmiermodus zu den neuen Komponenten der Sprache VB.NET und des .NET-Frameworks zu gewährleisten. Es wird daher davon abgeraten, diese Bibliothek bei der Erstellung neuer Projekte zu verwenden.

Delegieren

Delegaten sind Zeiger auf Funktionen, die bei der Ereignisbehandlung verwendet werden können und bei der asynchronen Programmierung nützlich sind.

Modul  Modul1 
   Öffentlicher  Delegierter  Sub  dTest

   Sub  Main () 
      Dim  temp  wie  neu  dTest ( AddressOf  Test )

      'synchroner Aufruf 
      temp . aufrufen

      'asynchroner Aufruf 
      temp . BeginInvoke ( New  AsyncCallback ( AddressOf  EndTest ),  temp ) 
      Console . WriteLine ( "OK" ) 
      Konsole . ReadLine 
   End  Sub

   Sub  Test () 'Hier ist eine lange 
      End - Sub -Verarbeitung
    

   Sub  EndTest ( ByVal  ar  As  iAsyncResult ) 
      ar . AsyncState . EndInvoke ( ar ) 
      Konsole . Writeline ( "EndTest" ) 
   End -  Sub - 
End -  Modul

Eigenschaften der Sprache

Wie für das entsprechende C # werden die in VB.NET geschriebenen Quellcodes normalerweise gemäß den JIT -Kriterien kompiliert : Die Umwandlung in Maschinencode (d. h. direkt von der CPU durchgeführt) erfolgt auf Anfrage nur, wenn das Programm geladen und ausgeführt wird. Zunächst wird der Quellcode durch das Framework in einen Zwischencode namens CIL konvertiert und erst bei der Ausführung des Programms konvertiert die CLR den CIL in Maschinencode, während er ausgeführt wird. Eine zweite Möglichkeit ist die sogenannte Ngen-Kompilierung , mit der Sie den gesamten CIL-Code auf einmal in Maschinencode umwandeln können.

Visual Basic .NET-Funktionen, die in C# nicht gefunden werden

  • Variablen können mit dem WithEvents-Konstrukt deklariert werden;
  • Automatische Verbindung von Ereignissen: VB.NET verwendet den Handles-Befehl, um sie zu behandeln;
  • Verwendung der With ... End With-Struktur für den direkten Zugriff auf die Funktionalität eines Objekts;
  • IsNumeric-Methode, um zu prüfen, ob ein String in eine Zahl umgewandelt (casting) werden kann;
  • XML-Literale; [4]
  • Direktdeklaration von Datumsangaben mit der Syntax # 1.1.2000 #;
  • Module (analog zu statischen Klassen);
  • Direkter Zugriff auf die Mitglieder eines Moduls (Siehe jetzt als Beispiel)
  • Der Namensraum My.*; [5]
  • COM-Komponenten und Interoperabilität funktionieren besser auf Objekten zur Laufzeit, [6]
  • Namensräume können in das Projekt eingebunden werden, um sie nicht jedes Mal in den verschiedenen Dateien erneut aufrufen zu müssen;
  • Aus einem booleschen Ausdruck herausgefilterte Inline-Ausnahmen mithilfe des Blocks "When expression". [7] ;
  • Unterschiedliche Syntax bei Linq To Objects , wo es unter anderem möglich ist, die abschließende „select“-Anweisung wegzulassen, um die Liste der Objekte direkt zu erhalten.

Umstieg von VB6 auf VB.NET

Obwohl viele Programmierer an ein Sprachupgrade geglaubt haben, sind VB.NET und VB in Wirklichkeit nicht kompatibel. In der Entwicklungs-IDE ist ein Konverter integriert, der jedoch eine teilweise Konvertierung des Codes gewährleistet. In den meisten Fällen ist eine vollständige Überarbeitung derselben erforderlich, da sich die Programmiertechnik von zwingend (wenn auch ereignisbasiert) zu objektorientiert entwickelt hat.

So verwenden Sie VB.NET

VB.NET ist eine frei verwendbare Sprache und ihr Compiler kann im Downloadbereich der Microsoft -Website heruntergeladen werden . Darüber hinaus ist auch eine völlig kostenlose Version von Visual Studio namens Express verfügbar . Außerdem gibt es ab der Visual Studio 2013 Version auch die Free Edition namens „Community“, die im kommerziellen Bereich einige Einschränkungen aufweist, ansonsten aber identisch mit der „Professional“ Version ist. Das Schreiben von Visual Basic-Code kann auch einfach mit einem beliebigen Texteditor erfolgen.

Es gibt auch einen Opensource- und Multiplattform- Compiler , der dank des Mono -Projekts in der Lage ist, auf anderen Umgebungen als Windows wie macOS und Linux zu kompilieren .

Notizen

  1. ^ Geschichte von Visual Basic , unter max-visual-basic.com , Copyright © 2009-2010 Max Visual Basic. Abgerufen am 21. Januar 2014 (archiviert vom Original am 15. Januar 2014) .
  2. ^ Jawiddis , Versionshinweise zu Visual Studio 2017 15.9 , unter docs.microsoft.com . Abgerufen am 14. Februar 2020 .
  3. ^ a b KathleenDollard, Neues für Visual Basic – Visual Basic , unter docs.microsoft.com . Abgerufen am 14. Februar 2020 .
  4. ^ Jonathan Allen, Benötigt C # die XML-Literale von VB9? , auf infoq.com . Abgerufen am 13. Januar 2009 .
  5. ^ [1]
  6. ^ Früh vs. Late Binding , auf visualbasic.about.com (archiviert vom Original am 25. Februar 2015) .
  7. ^ MSDN: Try ... Catch ... Final-Anweisung (Visual Basic)

Bibliographie

Verwandte Artikel

Andere Projekte

Externe Links