C# e VB.NET sono linguaggi sintatticamente molti diversi. Proprio come suggerisce il nome, la sintassi di C# si basa sul linguaggio di programmazione C originariamente sviluppato da Dennis Ritchie nel 1970. Java e C++ sono altri due linguaggi di programmazione la cui sintassi si basa ancora su C e condividono quindi tratti comuni. VB.NET ha invece le sue radici nel linguaggio BASIC degli anni 60, il cui nome è un acronimo di “Beginner’s All-purpose Symbolic Instruction Code”. All’inizio, BASIC è stato utilizzato all’università come linguaggio “basic” per una prima infarinatura alla programmazione informatica. Negli anni ’70, poi, il linguaggio è stato modificato per essere utilizzato sia come un semplice linguaggio di programmazione incorporato nella ROM sia come un quasi sistema operativo di controllo input/output. All’inizio degli anni ’80, il linguaggio è stato preso da Microsoft ed ampliato significativamente nella piattaforma/linguaggio “Visual Basic”, che è stata venduta per tutti gli anni ’90 come uno strumento “di sviluppo di rapida applicazione” per la programmazione Windows. Anche se Visual Basic è stata una piattaforma di sviluppo di successo, non è stato aggiornato in maniera continuativa dopo la sesta versione, fino a quando Microsoft ha introdotto il .NET Framework e la sua relativa piattaforma Visual Studio nei primi anni 2000. A quel tempo, i linguaggi C++ e VB6 erano utilizzati da Microsoft come i due linguaggi di programmazione base nel loro nuovo “Integrated Development Environment (IDE)”. Quesi linguaggi sono stati chiamati C# e VB.NET.
Sono entrambi linguaggi sintatticamente molto leggibili, quindi di facile apprendimento. Il linguaggio VB.NET è una evoluzione del vecchio Visual Basic e, nonostante la sintassi sia quasi identica, rispetto alla vecchia versione, adotta il paradigma di programmazione orientato agli oggetti. C# è, al contrario di VB.NET, un linguaggio totalmente nuovo e la sua sintassi è molto simile a quella del linguaggio JAVA. Anche il linguaggio C# adotta l’approccio orientato agli oggetti.
Elenchiamo adesso caratteristiche dei due linguaggi che costituiscono le principali differenze:
C#
- è case sensitive;
- consente di utilizzare i puntatori;
- eredita molte caratteristiche dal C++;
VB.NET
- non è case sensitive
- non consente di utilizzare i puntatori;
- è una evoluzione del Visual Basic;
Troviamo ovviamente differenze nella sintassi e inoltre i codici C# risultato essere meno “lunghi”.
