Visual Basic .NET
| Visual Basic .NET | |
|---|---|
| | |
| Språkklasse | Objektorientert , imperativ , strukturell , deklarativ |
| Utførelsestype | kompilert , tolket |
| Dukket opp i | 2001 |
| Forfatter | Microsoft Corporation |
| Filtype _ |
.vb |
| Utgivelse | Visual Basic 2019 (16.9.19) [1] (12. april 2022 ) |
| Type system | Dynamisk skriving , sterk skriving |
| Store implementeringer | .NET Framework , Mono , .NET |
| Dialekter | .NET, .NET 2003, 2005, 2008, 2010, 2012, 2013, 2015, 2017 |
| Vært påvirket | Visual Basic 6.0 |
| Nettsted | docs.microsoft.com/en-us... |
Visual Basic .NET ( VB.NET ) er et objektorientert programmeringsspråk som kan sees på som den neste utviklingen av Visual Basic (VB) implementert på .NET Framework . VB.NET er ikke bakoverkompatibel med en tidligere versjon (Visual Basic 6.0). Utviklingen av prosjekter av gamle versjoner (*.vbp) er bare mulig etter deres foreløpige konvertering til VB.NET-formatet av en spesiell veiviser (migreringsveiviser); imidlertid kreves det som regel betydelig manuell revisjon av tekster etter konvertering. 11. mars 2020 kunngjorde Microsoft slutten på utviklingen av VB.NET-språket [2] .
Versjoner
Eksisterende versjoner av VB.NET:
- Visual Basic .NET (VB 7.0) - utgitt i 2002, sammen med Visual C# og ASP.NET
- Visual Basic .NET 2003 (VB 7.1) - utgitt med .NET Framework 1.1; det er en russisk versjon med russisk MSDN
- Visual Basic 2005 (VB 8.0) - utgitt sent i oktober 2005 som en del av Visual Studio 2005
- Visual Basic 2005 Express - Utgitt tidlig i november 2005 i forbindelse med andre Express-produkter [1] , inkludert SQL Server 2005 Express Edition . Tilbys for gratis nedlasting og bruk. Krever .NET Framework 2.0.
- Visual Basic 2008 (VB 9.0)
- Visual Basic 2008 Express er en gratis, forenklet versjon utgitt sammen med det nye produktet. Tilbys for gratis nedlasting og bruk. Krever .NET Framework 3.5. Det er en russisk versjon med russisk MSDN for VS 2008 Express Edition.
- Visual Basic 2010 (VB 10.0) krever .NET Framework 4.
- Visual Basic 2010 Express er en gratis, forenklet versjon. Tilbys for gratis nedlasting og bruk. Krever .NET Framework 4.
- Visual Basic 2012 (VB 11.0) krever .NET Framework 4.5.
- Visual Basic 2013 (VB 12.0) krever .NET Framework 4.5.1.
- Visual Basic 2015 (VB 14.0) krever .NET Framework 4.6.
- Visual Basic 2017 (VB 15.0) krever .NET Framework 4.6.
- Visual Basic 2019 (VB 16.0) krever .NET Framework 4.8.
Endringer siden VB 6.0
De viktigste endringene i VB.NET er som følger.
- Støtte for objektorienterte programmeringskonsepter med konstruktører og destruktorer , arv , metodeoverstyringer (Overrides), etc. Det er til og med en redefinering av operasjonstegn.
- Kompilering til bytekode ( mellomspråk , IL ) kjørbar ved bruk av den virtuelle maskinen for common language runtime ( CLR ).
- Bruk av hele settet med objektbiblioteker inkludert i .NET Framework, inkludert kraftige verktøy for arbeid med skjemaer ( Windows Forms ), databaser ( ADO.NET ), grafikk ( GDI + ), sikkerhetsverktøy, nettsider ( ASP.NET ) og etc.
- Støtte for gratis multithreading.
- Støtte for strukturert unntakshåndtering ( SEH ).
Med overgangen til .NET-plattformen har selve programmeringsparadigmet endret seg (og dette er den viktigste endringen).
Programstruktur
- Grensesnittgruppe - klasseprototyper, Implementer - deres implementering.
- Navneområder Apparat for å unngå navnekollisjoner.
Data
- Streng type kontrollmodus (Alternativ Strict).
- Nye eller endrede datatyper:
- Char (et usignert ord som inneholder et Unicode-tegn ).
- Strengen inneholder nå alltid dobbelbyte Unicode-tegn.
- Kort (i stedet for det tidligere heltall), 16 bits. (-32768 til 32767)
- Heltall (i stedet for det gamle lange), 32 bits. (fra −2147483648 til 2147483647)
- Lang (heltall, 64 bits, −9223372036854775808 til 9223372036854775807).
- Deres usignerte varianter er:
- UShort (fra 0 til 65535),
- UInteger (fra 0 til 4294967295),
- ULong (fra 0 til 18446744073709551615).
- Signert byte: SByte.
- Desimal (96-bits heltall skalert med den nødvendige potensen 10), opp til omtrent [3] .
- Strukturdatastrukturen i stedet for Type, og, som en klasse, tillater den metoder.
- Varianttypen har fått nytt navn til Objekt. Valuta, streng*lengde-typene er avviklet.
- Når du beskriver, kan du spesifisere startverdien.
Nye språkfunksjoner
- Strukturell unntakshåndtering: Try/Catch/Finally/Throw statements, Exception object.
- Nye typer oppdragsoperatører: +=, -=, >>=, etc.
- Siden versjon [2005] har operatøren Continue {For|Do|While} dukket opp - en ny syklussving.
- Return-setningen returnerer en verdi for funksjoner.
- Skiftoperasjoner for heltall.
- Nye logiske operasjoner OgOgså OrElse - for dem er unødvendige beregninger av operander blokkert. Logiske operasjoner Eqv, Imp er opphevet.
- Et sett med standardfunksjoner, arbeid med kontroller og mye mer har blitt betydelig endret.
Eksempler
Opplegg for den enkleste algoritmen i Visual Basic .NET som lar deg endre verdien til en objektegenskap:
<objektnavn> . <egenskap> = <verdi>
Kodeeksempel i Visual Basic .NET:
Offentlig klasseskjema1 Privat underknapp1_Klikk ( ByVal sender Som System . Objekt , ByVal e Som System . EventArgs ) Håndterer Button1 . _ _ Klikk 'Graphics Using CG = Me ' . CreateGraphicsCG . _ DrawBezier ( Nytt system . Tegning . Penn ( Farge . Blå ), 0 , 0 , 100 , 100 , 600 , 600 , 0 , 400 ) CG . DrawBezier ( Nytt system . Tegning . Penn ( Farge . Blå ), 0 , 0 , 600 , 600 , 100 , 100 , 400 , 0 ) CG . DrawLine ( Nytt system . Tegning . Penn ( Farge . Blå ), 0 , 0 , 600 , 600 ) Avslutt med 'System MessageBox . Vis ( "Brukernavn: " + Min . Bruker . Navn . ToString + vbCrLf + _
"Skjermnavn: " + Min . Datamaskin . Skjerm . Enhetsnavn . ToString + vbCrLf + _
"Antall porter : " + Min . datamaskin . Porter . SerialPortNames .Count .ToString , _
" Box Caption " , MessageBoxButtons .OK , MessageBoxIcon .Error ) ' Network Using WC As New System . Nett . WebClient WC . Last ned fil ( "http://server.net/filename.exe" , "C:\myfile.exe" ) Slutt å bruke End Sub End Class
Hei Verden
I en konsollapplikasjon
Modul Module1
Sub Main ()
Console . WriteLine ( "Hallo, verden!" )
End Sub
End Module
I formen av
Private Sub HW ()
Dim helloworld As New Label 'erklærer en ny variabel av typen label
Med helloworld ' lar deg spesifisere egenskapene til et objekt uten å skrive navnet
. Tekst = "Hei verden"
. AutoSize = vbYes
. Font = Ny skrift ( .Tekst , 48 )
. Plassering = nytt punkt ( 100 , 100 )
. Synlig = True
End With
Me . Kontroller . Legg til ( helloworld ) 'legg til det opprettede objektet i skjemaet
End sub
Se også
- For en sammenligning av VB.NET-funksjoner med andre språk, se Programmeringsspråksammenligning
- Mono
- Gambas
Merknader
- ↑ Visual Studio 2019 versjon 16.9 utgivelser . Arkivert fra originalen 18. april 2022. Hentet 18. april 2022.
- ↑ Planlagt Visual Basic-støtte for .NET 5.0 ? . Visual Basic-blogg (11. mars 2020). Hentet: 15. juli 2022.
- ↑ "Inneholder 128-biters (16-byte) fortegnsverdier som representerer 96-biters (12-byte) heltall skalert til en variabel potens på 10. Skaleringsfaktoren spesifiserer antall sifre til høyre for desimaltegnet; området er fra 0 til 28." ( Datatype Desimal (Visual Basic) Arkivert 12. mars 2014 på Wayback Machine ).
Lenker
- Visual Basic 2010 Express nedlastingsside (russisk)
- Veiledningsvideoer for Visual Basic
- Hva er nytt i Visual Basic 2010 (russisk)
- Startsett og strømpakker for Visual Basic (russisk)
- Artikler, demoer, verktøyomvisning og annen informasjon om nettutvikling i Visual Basic. (Engelsk)
- Bit.Pirit.Info er et russiskspråklig forum dedikert til programmering i Visual Basic 6.0 og .Net
Litteratur
- Wallace Wong. Microsoft Visual Basic .NET for Dummies = Visual Basic.NET For Dummies. - M . : "Dialektikk" , 2003. - S. 336. - ISBN 0-7645-0867-9 .
- Jeffrey P. McManus, Jackie Goldstein, Kevin T. Price. Databasebehandling i Visual Basic .NET = Databasetilgang med Visual Basic.NET. - M . : "Williams" , 2003. - S. 416. - ISBN 0-672-32343-5 .
- Clayton Valnum. The Complete Idiot's Guide to Visual Basic .NET = The Complete Idiot's Guide to Visual Basic .NET. - M . : "AST Publishing House" , 2004. - S. 366. - ISBN 5-17-024833-4 .