Visual Basic

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
Visual Basic
Paradigma objectgeoriënteerd, event-gebaseerd
Verschenen in 1992
Ontwikkeld door Microsoft
Huidige versie 6 (1998, er komen geen nieuwe versies meer)
Typesysteem statisch, sterk
Beïnvloed door QuickBASIC
Invloed op Visual Basic.NET
Besturingssysteem Windows
Portaal  Portaalicoon   Informatica
Visual Basic.NET
Paradigma objectgeoriënteerd, event-gebaseerd
Verschenen in 2002
Ontwikkeld door Microsoft
Typesysteem dynamisch, sterk
Implementaties .NET Framework, Mono
Beïnvloed door Visual Basic 6, C#
Besturingssysteem Multiplatform
Portaal  Portaalicoon   Informatica

Visual Basic (VB) is de naam van een reeks programmeeromgevingen, later programmeertalen, uitgebracht door Microsoft. Het doel van Visual Basic is de ondersteuning van het bouwen van grafische applicaties op een visuele manier, dat wil zeggen, zo veel mogelijk via directe grafische manipulatie van elementen in plaats van het expliciet invoeren van programmacode.

Geschiedenis en versies[bewerken]

Visual Basic is in de loop van zijn geschiedenis sterk van karakter veranderd; de gebruikte programmeertaal heeft zo sterke wijzigingen ondergaan dat de huidige taal van een volkomen ander soort is dan de oorspronkelijke.

Voorgangers[bewerken]

Al sinds de opkomst van de pc ondersteunde Microsoft het hobbymatig programmeren daarvan in de programmeertaal BASIC. Voor de IBM-PC had Microsoft daarvoor de QuickBASIC-compiler met bijbehorende ontwikkelomgeving BASIC Professional Development System.

Door het succes van Microsoft Windows was het een logische stap om ook daarvoor het programmeren in BASIC te gaan ondersteunen.

Visual BASIC 1.0 (for Windows 3.x) (mei 1992)[bewerken]

Besloten werd om hiervoor het principe van het visueel programmeren te gebruiken, een principe dat, evenals de principes van Windows zelf, uiteindelijk zijn grondslag vindt in het Smalltalk-project van Xerox PARC. Visual BASIC 1.0 was de eerste ontwikkelomgeving van Microsoft die deze werkwijze ondersteunde.

Visual BASIC 1.0 for DOS (september 1992)[bewerken]

Ook QuickBASIC en zijn ontwikkelomgeving werden voor het visueel programmeren geschikt gemaakt. Het resultaat, Visual BASIC for DOS, was qua programmeertaal niet 100% uitwisselbaar met de Windows-versie.

Visual BASIC 2.0 (november 1992)[bewerken]

Verbeteringen volgden in versie 2.0, waarin onder meer het aanmaken van formulieren (venstertjes) vanuit de programmacode mogelijk werd.

Visual BASIC 3.0 (zomer 1993)[bewerken]

De volgende release had twee versies (Standard en Professional) en ondersteuning voor een database engine (Microsoft Jet 1.0).

Visual BASIC 4.0 (augustus 1995)[bewerken]

Naast de 16-bits-versie voor Windows 3.x was er van versie 4.0 ook een 32-bits-versie voor Windows 95.

Visual BASIC 5.0 (februari 1997)[bewerken]

Versie 5.0 werd alleen uitgebracht voor 32-bits, maar met ondersteuning van conversie heen en terug tussen 4.0 en 5.0. Het ondersteunde het schrijven van zelf gedefinieerde klassen, zowel voor interface-elementen (custom user controls) als niet-GUI-elementen.

Hiermee had VB ook als programmeertaal de belangrijkste kenmerken van objectoriëntatie, maar niet in dezelfde mate als bijvoorbeeld Object Pascal of C++.

Visual BASIC 6.0 (mei 1998)[bewerken]

Een van de vernieuwingen in versie 6.0 was de ondersteuning van webapplicaties.

De code die men schrijft voor Visual Basic 1.0 t/m 6.0 wordt gecompileerd tot een uitvoerbaar bestand dat vervolgens zelfstandig gedraaid wordt onder Windows. Deze maakt gebruik van de "runtime", een aparte DLL die alle ondersteuning voor Visual Basic bevat die tijdens uitvoering nodig is; voor versie 6 is dat MSVBVM60.dll. Deze is vrij verkrijgbaar als download op microsoft.com, en wordt vanaf Windows 98 meegeleverd.

Voorbeeldcode:

 Private Sub Form_Load()
 Dim strVoorbeeldzin As String
 Dim enmAntwoord As VbMsgBoxResult
 strVoorbeeldzin = "Hello World"
 enmAntwoord = vbNo
 MsgBox strVoorbeeldzin, vbInformation
 enmAntwoord = MsgBox("Wilt u dit programma afsluiten?", vbQuestion Or vbYesNo, "Hello World")
 If enmAntwoord = vbYes Then
 Unload Me
 End If
 End Sub

Visual Basic for Applications (VBA)[bewerken]

Nuvola single chevron right.svg Zie Visual Basic for Applications voor het hoofdartikel over dit onderwerp.

Visual Basic is ook ingevoerd als scripttaal, aanvankelijk in Microsoft Excel, later in alle Microsoft Office-applicaties. Deze scripttaal heet Visual Basic for Applications en is qua taal en ondersteunde GUI-elementen grotendeels uitwisselbaar met Visual Basic 6. Het belangrijkste praktische verschil is dat de vervaardigde code niet wordt uitgevoerd als een zelfstandige applicatie, maar binnen een draaiende Office-applicatie.

VBScript[bewerken]

Nuvola single chevron right.svg Zie VBScript voor het hoofdartikel over dit onderwerp.

Ook het scripten van dynamische webpagina's in ASP is mogelijk in Visual Basic; de daarvoor ontwikkelde variant heet VBScript. VBScript-code draait dus niet als zelfstandig programma of in een Office-applicatie, maar draait in een webserver en/of in de webbrowser tijdens het afhandelen van een paginaverzoek.

Visual Basic .NET (sinds 2002)[bewerken]

Visual Basic 7.0 en latere versies hebben een grote oppervlakkige gelijkenis met de zojuist genoemde eerdere Visual Basic's, maar zijn op een totaal nieuwe ondergrond gebaseerd: het .NET-framework. Hiermee wordt Visual Basic een door en door objectgeoriënteerde taal, zeer vergelijkbaar met C# of Java. Daarnaast verandert het karakter van de naam Visual Basic enigszins: die slaat nu specifiek op de programmeertaal, omdat de ondersteunende softwarebibliotheken en de runtime-ondersteuning ook worden gebruikt door alle andere .NET-talen, zoals C#. Ook heeft de taal een openbare specificatie.

Zoals de runtime van Visual Basic 6 is ook de .NET-runtime (beter bekend als het .NET-framework) vrij verkrijgbaar als download op microsoft.com, en wordt daarnaast meegeleverd met automatische Windows-updates en Windows Vista.

De verschillende versies zijn:

  • Visual Basic 7 (voor .NET 1.0, uitgekomen 16 januari 2002, en .NET 1.1, uitgekomen 24 april 2003)
  • Visual Basic 8 (voor .NET 2.0, uitgekomen 7 november 2005)
  • Visual Basic 9 (voor .NET 3.5, uitgekomen 19 november 2007)
  • Visual Basic 10 (voor .NET 4, uitgekomen 12 april 2010)

Het eerder gegeven voorbeeld in Visual Basic 7:

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   Dim voorbeeldzin As String = "Hello World"
   Dim antwoord As Microsoft.VisualBasic.MsgBoxResult = MsgBoxResult.No
   Do While antwoord <> MsgBoxResult.Yes
     MessageBox.Show(voorbeeldzin)
     antwoord = MessageBox.Show("Programma sluiten?", "Hello World", MessageBoxButtons.YesNo)
   Loop
   Me.Close()
 End Sub

Visual Basic 8 is een aanpassing van versie 7 aan de innovaties in .NET 2.0, voornamelijk generics.

Visual Basic 9 introduceert LINQ, een in de programmeertaal ingebouwde vorm van SQL die een uniforme omgang mogelijk maakt van relationele data, onafhankelijk van hun representatie (bijvoorbeeld in tabellen in een relationele database, in XML-documenten, of in collectie-objecten in het geheugen). Dit is een stap in de richting van dynamisch getypeerde, functionele programmeertalen zoals JavaScript en Lisp.

Visual Basic 10 gaat verder op dezelfde weg en ondersteunt bijvoorbeeld dynamisch getypeerde objecten en een groter repertoire aan anonieme functies (lambda-expressies).[1]

Vergelijkbare talen[bewerken]

Visual Basic is oorspronkelijk gebaseerd op de programmeertaal BASIC. Tot versie 5 lijken Visual Basic-programma's soms ook nog op BASIC, met regelnummers en GOTO-sprongen. Het procedurele paradigma, met subroutines en functies die elkaar aanroepen of als event handler fungeren, wordt steeds sterker, en ook de object-oriëntatie, met klassen, het aanmaken en opruimen van objecten, en overerving. Visual Basic .NET heeft geen enkele gelijkenis met het oorspronkelijke BASIC, maar lijkt op talen als C# (waar het direct door automatische decompilatie in kan worden omgezet of uit worden gegenereerd) en Java of Object Pascal.

Systemen vergelijkbaar met Visual Basic 6 of eerder[bewerken]

Een aantal softwarepakketten kan Visual Basic (6 en eerder) gedeeltelijk interpreteren. Ze zijn niet broncodecompatibel, maar de gelijkaardigheid van de ontwikkelomgevingen staat het toe de Visual Basic-expertise snel toe te passen.

  • PowerBASIC (Windows - DOS) - Creëert kleine en snel ladende standalone executables.
  • DarkBASIC (Windows) - BASIC-taal met DirectX-mogelijkheden speciaal voor het programmeren van games.
  • REALbasic (Macintosh - Windows - GNU/Linux) - Een taal die dezelfde keywords, API, en design-mode interface heeft.
  • Liberty BASIC (Windows) - Voor MSDOS console BASIC en of Windows (XP, Vista, Windows 7)
  • SimpleBASIC (Windows - GNU/Linux) - Visual Basic met meerdere mogelijkheden en makkelijker. (In constructie)
  • StarOffice Basic - macrotaal gebruikt in Oracle Open Office en OpenOffice.org
  • Kbasic (Linux - Windows) - een opensource-initiatief om Visual Basic-functionaliteit op Linux te bieden
  • Vrije software:
    • Gambas (GNU/Linux) - poging om het gebruiksgemak en de interface van Visual Basic te dupliceren.
    • HBasic (Qt, GNU/Linux)
    • Gnome Basic (GNOME, GNU/Linux) - bedoeld om VBA-functionaliteit te bieden in GNOME en aan vrije software in het algemeen. Veel ontwikkelaars van dit project werken nu aan Mono.
    • XBasic (Windows/Linux) - bedoeld om cross-platform te kunnen ontwikkelen in BASIC.

Zie ook[bewerken]

Bronnen, noten en/of referenties
  1. What's New in Visual Basic 2010, artikel op MSDN, bezocht op 25 januari 2010
Wikibooks Wikibooks heeft een studieboek over dit onderwerp: Visual Basic.