giovedì 25 maggio 2017

Confronto tra i linguaggi C# e VisualBasic.NET

C# e VisualBasic.NET (VB.NET) sono due linguaggi di programmazione sviluppati da Microsoft e progettati per la piattaforma .NET utili per la compilazione di un'ampia gamma di applicazioni nel Common Language Runtime (CLR) del Framework.NET, che costituisce una piattaforma di esecuzione per un gran numero di linguaggi. In informatica, il CLR è  il nome scelto da Microsoft per la macchina virtuale della piattaforma .NET. La macchina virtuale è un programma che converte il bytecode, ovvero un codice usato per descrivere le operazioni che costituiscono lo stesso, nel codice nativo che verrà eseguito in uno specifico processore. Il CLR è l'ambiente di esecuzione del Common Intermediate Language (CIL), il linguaggio intermedio in cui i compilatori della piattaforma .NET traducono i linguaggi supportati dalla piattaforma stessa. Una volta scritto il programma che si vuole eseguire la trasformazione in codice macchina può avvenire in due modi:

  • Read to line su richiesta al caricamento ed esecuzione del programma. In prima istanza il codice sorgente viene convertito dal Framework in un codice intermedio detto CIL, solo all'esecuzione del programma il CLR converte il CIL in codice macchina, man mano che viene eseguito.
  • Read to end alla fine del codice. In cui tutto il codice CIL viene convertito in codice macchina in una sola volta.

I due linguaggi sopra citati sono molto simili tra loro, anche se la sintassi del C# prende spunto da quella di C++ e di Java mentre il VisualBasic.NET proviene dal Basic. Ad una prima analisi è evidente che VB.NET risulta la scelta preferita per chi proviene dalle versioni precedenti di VB e ASP-VBScript, mentre C# è utilizzato per chi proviene da esperienze con C++ e Java.


Quali sono le caratteristiche di C#?

C# è il linguaggio che meglio degli altri descrive le linee guida sulle quali ogni programma .NET gira; questo linguaggio infatti è stato creato specificatamente per la programmazione nel Framework.NET. I suoi tipi di dati "primitivi" hanno una corrispondenza univoca con i tipi .NET e molte delle sue astrazioni, come classi, oggetti e interfacce sono particolarmente adatte a gestire il Framework.NET. 

Caratteristiche:

  • Tutto è un oggetto;
  • Possibilità di utilizzare i puntatori, ma solo in particolari zone di codice;
  • Sono consentite solo conversioni implicite, dove non ci sta perdita di dati;
  • Come in java è possibile ereditare da una sola classe;
  • Presenza di namespace al posto dei package di Java.











Quali sono le caratteristiche di VB.NET?

VisualBasic ha molte delle caratteristiche di C# ma ha una facilità d'uso superiore, infatti è uno dei linguaggi più pratici della piattaforma .NET.
Con Vb.Net è possibile realizzare:

  • Applicazioni windows forms;
  • Web;
  • Servizi;
  • Componenti COM, MQ, Web service;



Differenze tra C# e VB.NET

La prima differenza fondamentale è che il codice di VB.NET è più uniforme di quello di C#, in quanto viene meno l'utilizzo di parentesi graffe. Ad esempio:

C#

if (a <  5) {
...
}
else{
...
}

VB.NET 

if (a < 5) Then
...
else
...
End if


Una seconda differenza è quella che riguarda il "case sensitive", in quanto C# fa distinzione tra maiuscole e minuscole, mentre in VB.NET scrivere variabili in minuscolo o maiuscolo è indifferente.
Un'altra differenza corrisponde all'utilizzo del comando ";" , in C# corrisponde alla fine di un istruzione e l'inizio della successiva; mentre in VB.NET non viene utilizzato.

C#

a = b + c;

VB.NET

a = b + c

Nessun commento:

Posta un commento