Privacy Policy Cookie Policy Terms and Conditions Visual Basic .NET - Wikipedia

Visual Basic .NET

Da Wikipedia, l'enciclopedia libera.

Basato su Microsoft's Visual Basic (VB), Visual Basic .NET (VB.NET) è un linguaggio di programmazione derivato dalla versione 6.0 e precedenti , ma rivoluzionato, in quanto implementa in modo completo il paradigma della programmazione ad oggetti, ed utilizza, come tutti gli altri linguaggi della serie .NET, il meccanismo di gestione automatica della memoria della garbage collection. Da quando è uscita la versione 1 fino alla revisione .NET, il Visual Basic è diventato sempre più complesso e potente. I prossimi esempi possono darne una idea delle potenzialità:

Esempio di Visual Basic classico (6.0 e precedenti):

 Private Sub Command1_Click()
  
    MsgBox "Ciao Mondo!"
  
 End Sub

Esempio di Visual Basic .NET:

 Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
  
     MessageBox.Show("Ciao Mondo!", "Titolo esempio", MessageBoxButtons.OK, MessageBoxIcon.Information)
  
 End Sub

Nell'esempio sopra riportato è indicata la nuova sintassi che sostituisce il classico MsgBox. La visualizzazione del messaggio è effettuata dal metodo Show della classe MessageBox. Notare che normalmente per invocare un metodo è necessario creare un'istanza di una classe. In questo caso, tuttavia, il metodo, essendo di tipo Shared (cioè condiviso) può essere chiamato anche senza istanziare la classe. La vecchia sintassi MsgBox è, comunque, supportata anche dalla nuova piattaforma di sviluppo. Per istanziare una classe si intende creare un oggetto del tipo definito dalla classe.

Altra importante innovazione è l'introduzione dei cosiddetti delegate per gestire in molto flessibile il trapping degli eventi. Nel seguente esempio la navigazione fra le celle di una griglia bindata ad una tabella di un database, provoca l'esecuzione del codice della routine CambioCella:

AddHandler Datagrid1.CurrentCellChanged, AddressOf CambioCella
  
Private Sub CambioCella(ByVal sender As Object, ByVal e As EventArgs)
  
    ' Fa qualcosa ...
  
End Sub

Notare che la routine CambioCella (definita dall'utente) deve accettare lo stesso numero e tipo di argomenti, in gergo tecnico avere la stessa firma, del metodo CurrentCellChanged della classe Datagrid del framework.


  • Nota che nel VB.NET tutte le chiamate alle procedure devono essere create all'interno delle parentesi, mentre nel VB classico possono essere create solo chiamate alle funzioni.

C'è una copiosa documentazione che mette in confronto la sintassi (le regole del linguaggio), i cambiamenti per il debugging delle applicazioni, sviluppo e terminologia.

Indice

[nascondi]

[modifica] Ulteriori informazioni su Visual Basic .NET

Molti programmatori hanno considerato questa nuova edizione di Visual Basic come un linguaggio totalmente rinnovato, sia sintatticamente che logicamente. Malgrado lo strumento integrato in Visual Studio .Net che permette la migrazione automatica da progetti VB 6 a VB.NET, molti sviluppatori hanno avuto diverse difficoltà nel passaggio tra le versioni, per procedure e funzioni che prima erano integrate nel linguaggio e ora, col nuovo .Net Framework, non sono state reintegrate; Ulteriore problema è stata la parziale modifica della sintassi con parole chiavi prima ammesse ma ora ritenute invalide (o come vengono chiamate dall'IDE, obsolete).

In Visual Basic 2005 (il successore di VB.NET), Microsoft ha reintrodotto alcune funzionalità di cui la corrente versione di VB.NET è priva:

  • una libreria di classi chiamata My che permette ai programmatori di accedere facilmente alle possibilità che il .NET framework offre;
  • la funzione Pausa (in Visual Studio .Net 8) che permette di interrompere il processo di debug (senza chiudere l'applicazione), modificare il codice sorgente e riavviarlo come se non fosse stato ricompilato.

[modifica] Aggiornamenti

Una nuova suite, minore rispetto a Visual Studio, che introduce il nuovo .Net Framework 2.0 può essere scaricata dal sito Microsoft. Essa è chiamata "Express Editions" e sono la base per prossima evoluzione della storia della Programmazione. [1] Ci sono 6 differenti edizioni, una per linguaggio o scopo:

  • Visual Basic 2005 Express
  • Visual C# 2005 Express
  • Visual C++ 2005 Express
  • Visual J# 2005 Express
  • Visual Web Dev 2005 Express
  • SQL Server 2005 Express

Al momento questa edizione è disponibile in modo totalmente gratuito. È necessaria comunque una attivazione del prodotto, con un seriale disponibile sul sito del produttore.

[modifica] Voci correlate

[modifica] Collegamenti esterni

Principali linguaggi di programmazione (tutti)

Ada | ALGOL | APL | Awk | BASIC | C | C++ | C# | COBOL | Delphi | Eiffel | Fortran | Haskell | IDL | Java | JavaScript | J# | Lisp | LOGO | ML | Objective C | O'Caml | Pascal | Perl | PHP | PL/I | PLaSM | Prolog | Python | Ruby | SAS | Scheme | sh | Simula | Smalltalk | SQL | Visual Basic

THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu