Leistungen
Leistungen
Überblick
Leistungsangebot
Kernkompetenzen
Schulungsthemen
In-House-Schulungen
Offene .NET-Seminare
Offene WPS-Seminare
Beratung
Coaching
Support
Softwareentwicklung
Entwickler-Vermittlung
.NET/Visual Studio
TFS/ALM/Scrum
Webprogrammierung
PowerShell
Konditionen
Anfrage/Kontakt
Beratung/Coaching
Beratung/Coaching
Beratungsthemen
Coaching
Unsere Berater
Referenzkunden
Konditionen
Angebotsanfrage
In-House-Schulungen
In-House-Schulungen
Überblick
Themen/Fachgebiete
Schulungskonfigurator
Konzepte
.NET/Visual Studio
C#
VB.NET
ASP.NET
Moderne Webanwendungen
TFS/ALM/Scrum
PowerShell
Konferenzvortraege
Referenzkunden
Unsere Trainer
Konditionen
Angebotsanfrage
Offene Schulungen
Offene Schulungen
Überblick .NET-Seminare
.NET/C#-Basisseminar
WPF (Desktop)
ASP.NET/AJAX (Web)
WCF/WF (SOA)
ADO.NET/EF (Data)
Windows PowerShell
.NET, C#, VB, Visual Studio
.NET, C#, VB, Visual Studio
Startseite
Beratung/Training
Offene .NET-Seminare
Einführung
Lexikon
Artikel
Bücher
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
World Wide Wings Demo
Codebeispiele
Scripting
ASP.NET
.NET 2.0
.NET 3.0/3.5
.NET 4.0/4.5
Community
Forum
Kommerzielle Leistungen
ASP.NET
ASP.NET
Startseite
Lexikon
Sicherheit
Konfiguration
Global.asax
Tracing
Technische Beiträge
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
PowerShell
PowerShell
Überblick
Beratung
In-House-Schulungen
Öffentliche Schulungen
Codebeispiele
Commandlet Extensions
Offene PowerShell-Seminare
Inhouse-Seminare
Windows
Windows
Startseite
Windows Runtime (WinRT)
Windows PowerShell
Windows Scripting
Windows-Schulungen
Windows-Lexikon
Windows-Forum
Windows Scripting
Windows Scripting
Startseite
Lexikon
FAQ
Buecher
Architektur
Skriptsprachen
Scripting-Hosts
Scripting-Komponenten
COM/DCOM/COM+
ADSI
WMI
Scripting-Tools
WSH-Editoren
Codebeispiele
ASP.NET
.NET-Scripting
Forum
Links
Kommerzielle Leistungen
Service
Service
Website-FAQ
Anmeldung/Login
Leser-Registrierung
Gast-Registrierung
Nachrichten/RSS
Newsletter
Foren
Weblog
Lexikon
Downloads
Support
Kontakt
Literaturtipps
Publikationen
Publikationen
Redaktionsbüro
Bücher
Fachartikel
Leser-Portal
Autoren gesucht!
Rezensionen
Über uns
Über uns
Holger Schwichtenberg
Team
Referenzkunden
Kundenaussagen
Referenzprojekte
Partner
Site Map
Weitere Websites
Tag Cloud
Impressum
Rechtliches

Erklärung des Begriffs: Visual Basic 8.0
Was ist Visual Basic 8.0?

Zurück zur Stichwortliste



Begriff Visual Basic 8.0
Abkürzung
Synonyme/Aliase

Erläuterung des Begriffs Visual Basic 8.0

Die Sprache Visual Basic ist in der Version 8.0 Teil des .NET Framework 2.0.
Der offizielle Produktname ist "Visual Basic 2005" (nicht Visual Basic .NET 2005)

Visual Basic 2005 ist ein Alias für Visual Basic 8.0. Die Vorgängerversionen hießen noch "Visual Basic .NET 7.x". Microsoft folgt damit dem eigenen Trend, das ".NET" wieder aus allen Produktnamen zu entfernen. Dadurch kann man nun nicht mehr einfach das objektorientierte und .NET-basierte Visual Basic von dem nur teilweise objektorientierten und COM-basierten Visual Basic (bis Version 6.0) zu trennen.

Neuerungen in Visual Basic 8.0 an der Sprache gegenüber der Vorgängerversion 7.1:



- Generics (Schlüsselwort "Of")
- Operatorenüberladung (Schlüsselworte "Operator", "Widening" und "Narrowing")
- Datentypen UShort, UInteger und ULong
- Datentyp signed byte (SByte)
- continue-Schlüsselwort, um eine Schleife vorzeitig fortzusetzen
- Using-Block, der einen Aufruf der Methode Dispose() realisiert, wenn ein Objekt die Schnittstelle System.IDisposable implementiert.
- Compiler-Warnung bei nicht initialisierten Variablen
- IsNot-Operator zum Objektvergleich
- XML-Code-Dokumentation
- Partielle Klassen: Die Implementierung einer Klasse kann in mehrere Dateien aufgeteilt sein. Diese Funktion wird sowohl von Windows Forms als auch von Web Forms verwendet zur Trennung von Code und Layout.
- gemischte Sichtbarkeit für Getter- und Setter-Routine bei Properties

Visual Basic holt weiter auf


Bereits in den Versionen 7.0 und 7.1 konnte sich die erweiterte Sprache Visual Basic mit dem im Rahmen von .NET neu entwickelten C# messen lassen. In einigen Bereichen, in denen C# bislang noch eine Nasenspitze voraus lag, setzt Visual Basic mit der Version 8.0 nach. Dabei ist an vorderster Stelle die Operatorüberladung zu nennen. Operatorüberladung erlaubt es, einem der unären oder binären Standardoperatoren (+, -, *, =, +, And, Or, Not etc.) bei der Verwendung mit beliebigen Klassen als Operatoren eine eigene Bedeutung zuzuweisen. In Listing 1 ist der Plus-Operator für die Addition eines Flug-Objekts zu einem Passagier-Objekt implementiert, wodurch eine elegante Flugbuchung möglich wird.

Auch die schon vorher in C# verfügbare XML-Code-Kommentierung ist nun in Visual Basic eingebaut. Nach einem dreifachen Häkchen - statt des üblichen einfachen Häkchens - gestattet Visual Basic 8.0 eine XML-Sprache, die der Compiler zusammen mit Assembly-Metadaten in eine XML-Datei parallel zum Kompilat ablegt (siehe ebenfalls Listing 1). Die XML-Datei kann der Entwickler zur Erstellung von technischen Dokumentationen verwenden. Entsprechende Werkzeuge zur Weiterverarbeitung der XML-Daten gibt es aber nicht von Microsoft, sondern nur von Drittanbietern (siehe [3]). Auch der using-Block, bei dem am Blockende automatisch die Dispose()-Methode der im Blockkopf deklarieren Variablen aufgerufen wird, ist nun in Visual Basic verfügbar.

Neu im Compiler von Visual Basic 2005 im Vergleich zu Visual Basic 7.x ist, dass er die Kompatibilität mit der Common Language Specification (CLS) überprüft und warnt, wenn man Typen (z.B. UInteger) verwendet, die nicht CLS-konform sind. Außerdem prüft der Visual Basic-Compiler nun genau wie der C#-Compiler, ob deklarierte Variablen überhaupt jemals verwendet werden und ob verwendete Variablen bereits initialisiert sind.

  ''' <summary>
  ''' Die Buchung eines Flug ist möglich mit dem Operator +.
  ''' <example>
  ''' Dim p As New de.WWWings.PassagierSystem.Passagier("Schwichtenberg", "Holger")
  ''' Dim f As New de.WWWings.Flug("100", "Essen/Mühlheim", "")
  ''' Dim b As de.WWWings.PassagierSystem.Buchung
  ''' b = f + p
  ''' </example>
  ''' </summary>
  ''' <param name="flug">Erster Operator ist ein Objekt vom Typ Flug.</param>
  ''' <param name="pass">Zweiter Operator ist ein Objekz vom Typ Passagier</param>
  ''' <returns>Das Ergebnis ist ein Flug-</returns>
  ''' <remarks></remarks>
  Shared Operator +(ByVal Flug As Flug, ByVal Pass As de.WWWings.PassagierSystem.Passagier) As PassagierSystem.Buchung
   Pass.Buchen(Flug)
   Dim b As New PassagierSystem.Buchung(Flug, Pass)
   Return b
  End Operator
Listing 1: Operatorüberladung und XML-Code-Kommentare in Visual Basic 2005

Visual Basic 8.0 enthält weitere, im Vergleich zu den vorgenannten Punkten unwesentliche Neuerungen:
- für die Datentypen SByte, UShort, UInteger und ULong gibt es nun eigene Schlüsselwörter. In .NET 1.x konnten diese Typen nur direkt aus der Klasssenbibliothek (z.B. System.UInt32) verwendet werden.
- Das Konstrukt "not x is y" kann der Entwickler nun verkürzt als "x isNot y" schreiben.
- Getter- und Setter-Routine bei Properties dürfen einen unterschiedliche Sichtbarkeit haben, z.B. darf der Getter Public sein und der Setter Private.
- Mit dem continue-Schlüsselwort darf der Entwickler einen erneuten Schleifendurchlauf initiieren.



Original-Quelle (MS, PDC 2003):


Continue Statement
Visual Basic now supplies a Continue statement, which immediately skips to the next iteration of a Do, For, or While loop.

Default Instances
Visual Basic now allows you to refer to members of certain classes, such as Form1, by using the class name, instead of explicitly creating an instance of it.

IsNot Operator
Visual Basic now furnishes an IsNot operator, with which you can avoid using the Not and Is operators in an awkward order.

Using Statement
Visual Basic now offers a Using...End Using block to ensure disposal of a system resource when your code leaves the block for any reason.

Explicit Zero Lower Bound on an Array
Visual Basic now permits an array declaration to specify the lower bound (0) of each dimension along with the upper bound.

CLS Compliance Checking
Visual Basic now generates a warning for each line of code that contains any specification or operation that the Common Language Specification (CLS) does not support.

Properties with Mixed Access Levels
Visual Basic now allows you to declare a property with different access levels on its Get and Set procedures.

Unsigned Types
Visual Basic now supports unsigned integer data types (UShort, UInteger, and ULong) as well as the signed type SByte.

Operator Overloading
Visual Basic now allows you to define a standard operator (such as +, &, Not, or Mod) on a class or structure you have defined.

Hiding Designer-Generated Code
Visual Basic now provides a mechanism to hide sensitive or delicate code from the normal view of the integrated development environment (IDE).

Data Type Arguments
Visual Basic now supports data type arguments on classes, structures, interfaces, and procedures. A data type argument specifies at compilation time the data type of one of the elements in the class, structure, interface, or procedure.

Uninitialized Variable Checking
Visual Basic now generates a warning for each potentially uninitialized variable. A variable has this status if there is at least one possible execution path that does not assign any value to the variable before using it.

Artikel in gedruckten Medien

  • Weniger tippen: Ausblick auf .Net 2.0 und Visual Studio 8.0
     (iX - Magazin für professionelle Informationstechnik, 2003)
  • Querverweise zu anderen Begriffen im Lexikon

    Integrated Development Environment
    Common Language Specification
    Visual Basic .NET 2005
    .NET Framework 2.0
    Visual Basic 2005
    Visual Basic .NET
    Partielle Klasse
    Windows Forms
    IDisposable
    Metadaten
    Dispose()
    Property
    Assembly
    Compiler
    Generic
    Setter
    Getter
    MIX


    Dienstleistungen:

    Beratung/Consulting zu Visual Basic 8.0

    Support zu Visual Basic 8.0

    Schulungen zu diesem Thema: