C# e VB.Net: Linguaggi di programmazione a confronto


C# e Visual Basic .NET sono due tra i molti linguaggi di programmazione disponibili per la piattaforma .NET. Il Common Language Runtime (CLR) del Framework .NET costituisce, infatti, una piattaforma di esecuzione comune per un gran numero di linguaggi, tra cui C++, J#, Cobol.NET .

Più che stabilire quale sia il “migliore”, è interessante capire le peculiarità di ciascun linguaggio.
C# è un linguaggio nuovo, mentre VB .NET porta con sé l’eredità di tutte le versioni precedenti di Visual Basic (la sintassi di VB .NET, seppur aggiornata con il supporto agli oggetti, è praticamente la stessa di quella di Visual Basic 4.0, rilasciato nell’ormai lontano 1996).
Un primo aspetto evidente è che il codice scritto in VB .NET risulta più lungo rispetto all’equivalente in C#.

Un’altra grande differenza, forse la più evidente, è che C# è case sensitive, ovvero fa distinzione tra maiuscole e minuscole, mentre VB case insensitive: per C# le variabili nomePersona e NomePersona sono diverse, mentre per Visual Basic .NET sono la stessa.

Al di là delle differenze che riguardano la sintassi, C# permette di realizzare cose che in VB .NET non si possono fare, e viceversa. Ad esempio, C#, mostrando la sua derivazione dal C++, consente di utilizzare i puntatori, cosa che VB .NET non permette.
Alcune differenze architetturali sono state colmate con la versione 2.0 del Framework, che introduce anche per Visual Basic .NET l’overloading degli operatori (altra caratteristica che C# ha preso da C++) e la possibilità di documentare il codice scritto utilizzando il linguaggio XML. Infatti C# permette la documentazione delle classi usando dei tag nel codice in modo molto somigliante ai commenti per JavaDocs.
VB .NET, in particolare con la nuova versione del Framework, rende ancora più semplice e veloce la scrittura di applicazioni.
Per il loop in C# si usano le parentesi graffe, mentre in VB.NET esistono delle parole chiave che aprono e chiudono il loop.
Ogni comando in C# termina con il punto e virgola, invece in VB.NET il comando termina alla fine della riga.
In VB.NET per definire una variabile stringa scriverò:
"Dim Pippo As String"
In C# scriverò:
"String Pippo"
E' possibile convertire i vari linguaggi tra di loro perchè tutti sono riconducibili ad un unico metalinguaggio chiamato MSIL, Microsoft Intermediate Language. MSIL è il linguaggio base per la programmazione definito da Common Language Infrastructure (CLI) ed è usato dal .NET Framework. Grazie a MSIL si può passare dai vari linguaggi di programmazione al metalinguaggio e viceversa.

Commenti

Post popolari in questo blog

Resampling dei dati

Indici di performance di una strategia di trading. Calmar Ratio, Sharpe Ratio, Sortino Ratio

Metodi di calcolo del PNL