Hoppa till innehållet

Visual Basic

Från Wikipedia

.

Källkod skriven i Visual Basic

Visual Basic (VB) är ett programspråk i BASIC-familjen, där "Visual" står för fönsterhanteringen men också ett nytt sätt att programmera på. Till skillnad från tidigare eller andra varianter av programspråket BASIC, där radnummer användes för att referera till olika positioner, så behöver man inte ange radnummer i koden.

När man gick ifrån radnumrering vid skapandet av Visual Basic närmande man sig andra mer avancerade programspråk där radnummer inte användes. I stället för att hänvisa till radnummer infördes en funktionsorienterad struktur i koden, vilket var vanligt i andra etablerade programspOKl, C, C++ mm. Detta underlättade också strukturen och läsbarheten i koden.

För att underlätta fönsterhanteringen infördes också visuella hjälpmedel som komplement till programmeringen. I Visual Basic finns hjälpmedel för att skapa och ritade de "fönster" (Windows) som behövdes för den windowsapplikation man utvecklar. Till denna visuella skapelse knyts kod i Visual Basic för att utföra önskade funktioner.

Visual Basic är utvecklad av Microsoft som också står bakom operativsystemet Microsoft Windows .

Visual Basic togs fram för att underlätta utvecklingen av sk windowsprogram som var anpassade till operativsystemet Microsoft Windows .

När Microsoft Visual Basic utvecklades var programföretaget Borland också en ledande aktör inom utvecklingshjälpmedel. Borland var också vid tidpunkten aktiv och hade nya utvecklingshjälpmedel för att stödja utvecklingen av windowsprogram.

Kort beskrivning av några varianter

VB6

Visual Basic 6 (eller VB6) är ett fristående programspråk, till skillnad från de nedan nämnda varianterna. Det ingår också som en del i utvecklingsmiljön Visual Studio, som lånar en del funktioner från de tidigare versionerna av Visual Basic.

VB (tidigare VB.Net)

Visual Basic påminner ytligt om VB6, men är anpassat till ramverket .NET. Detta innebär att de tillgängliga biblioteken avviker kraftigt (även om ett speciellt kompatibilitetslager för VB6 finns), att minneshanteringen inte längre bygger på referensräkning och att stödet för objektorientering är mer fast i språket än vad som tidigare var fallet.

VBA

Visual Basic for Applications (VBA) är konstruerat att vara ett tillägg till flera av Microsofts applikationer, framförallt Office-programmen Excel och Word, där makron skrivs i VBA från och med versionen Office 97.

VBS

Visual Basic Scripting Edition (VBScript eller VBS) är ett tolkat språk för användning i skript, som namnet anger. Dessa skript kan kopplas till ASP eller läggas in i HTML-kod. I Windows finns Cscript.exe och Wscript.exe för att kunna använda VBS-filer i stället för BAT-filer.

VB6 till VB-problem

Det finns en del problem med att försöka migrera ett klassiskt språk till ett mer modernt, framför allt att gå från ett icke typat språk till möjligheten att välja att språket är starkt typat eller ej. Med parametrarna Explicit och strict on är Visual Basic näst intill ekvivalent med C#.

Andra varianter av Visual Basic

Visual Studio

Visual Basic är en del av Microsofts programutvecklingssvit Visual Studio där även följande program ingår.

Exempel

Detta är ett exempel hur man skriver i Visual Basic: Vi antar här att en instans av klassen TextBox finns → (ett objekt).
I VB använder man medlemsoperatorn "." (punkt) för att få tillgång till ett objekts medlemmar som kan vara egenskaper eller metoder.

Det skapade objektet kan till exempel ha en medlem "Text" (egenskap), vilken man kan tilldela data(egenskapsvärde),
vilket även är fallet med vårt objekt Text1 (standardnamnet för den första instansen av klassen TextBox = första objektet).
En instans av en klass kallas för ett objekt.

I VB är en sträng allt som börjar med " och slutar med ". Strängliteral är ett annat namn för sträng(konstant).

Vi kan nu tilldela objektet Text1:s medlem Text en strängliteral. Detta skrivs på följande sätt:

Text1.Text = "Strängliteral"

Om man vill ha villkorlig exekvering (val) så använder man IF, ELSEIF, och ELSE. I VB skriver man:

IF (villkor) THEN
    satser
ELSEIF (ytterligare villkor) THEN
    satser
ELSE (om inget av de tidigare villkoren uppfyllts)
    satser
END IF

Antag att man vill visa en meddelanderuta när användaren har skrivit in en viss sträng i TextBoxen.

Man kan då utnyttja olika fördefinierade metoder som utlöses av händelser som påverkar objekt av klassen. Klassen TextBox har metoden Text_Change som utlöses(automatiskt anropas) vid en förändring hos objektets egenskaper. Dessa s.k. händelseprocedurer kan förses med lämplig kod som ska utföras när en vald händelse utlöses till exempel av en textinmatning som påverkar objektets Text-egenskap.

Så här kan det se ut i en textboxs "Change"-händelse om man vill kontrollera inmatad data:

Private Sub Text1_Change()
IF (Text1.Text = "böter") THEN
    MsgBox "Du får böter..."
ElSEIF (Text1.Text = "erase")
    MsgBox "Din hårddisk rensas..."
END IF
END Sub

Sub och Function

En sak som skiljer VB ifrån många andra språk, är att deklarationen av en metod som inte returnerar värden (Sub) och en metod som returnerar värden (Function) skiljer sig åt.

I t.ex. C# använder man sig istället av returtypen void (ingenting) då en metod inte returnerar några värden.

Här är ett jämförande exempel på detta i VB och C#.

VB

Private Sub DoSomething()
   ...
End Sub

Private Function ReturnSomething() As Integer
   ...
   Return 1
End Function

C#

private void DoSomething() {
    ...
}

private int ReturnSomething() {
    ...
    return 1;
}

Externa länkar

Visual Basic på Wikibooks.