VB:NET E C#: Due linguaggi a confronto

Vb.Net e C#


Quando si parla di C# e Vb.Net, si intendono due linguaggi di programmazione che vengono utilizzati frequentemente nella piattaforma .Net che rappresenta,appunto,una piattaforma di esecuzione per un gran numero di linguaggi tra cui C++ e J#.

Sebbene esistano differenze tra Vb.Net e C#, entrambi sono di primaria importanza, data la loro eguale potenza.  

Vb.Net è un linguaggio di programmazione che presenta due innovazioni rispetto al passato:
  • è orientato a oggetti come ereditarietà, polimorfismo e overloading  che non sono più prerogative di programmatori Java e C++;
  • ha il supporto nativo per la creazione e la gestione dei thread in cui ad esempio anche la casella degli strumenti di Vb.Net è stata  ampliata includendo nuovi controlli utili.
C#, invece, si ispira ai linguaggi C/C++ e Java ma presenta varie innovazioni  rispetto ad esse come: la possibilità di utilizzare puntatori, conversioni implicite e di ereditare da una sola classe.





Le principali differenze tra Vb.Net e C#
 
Determinare se un linguaggio risulti migliore o peggiore è impossibile, data la loro similarità, è possibile però evidenziare le principali differenze.



La prima differenza fondamentale è che il codice di Vb.Net è più uniforme di C#,in quanto l’utilizzo delle parentesi graffe viene meno, rendendo in questo modo il programma più comprensibile anche per i meno esperti. Ad esempio:


C# if (a > 1) {
...
} else {
...
}


Al contrario Vb.Net, ci aiuta nel rendere uniforme ciò che scriviamo. Infatti possiamo solo scrivere :


Vb.Net If (a > 1) Then
...
Else
...
End If


A questa si ricollega una seconda differenza che risale alla questione della scrittura con le maiuscole e con le minuscole. C# è un chiaro esempio di “case sensitive”; al contrario per Vb.Net scrivere delle variabili in minuscolo o maiuscolo non fa alcuna differenza.


Una terza differenza corrisponde alla modalità più “coincisa” relativa a C# in contrapposizione con la “descrittività” di Vb.Net. Ad esempio:

C#
public double CalcolaMedia(double N1, double N2)
{
return (N1 + N2) / 2;
}


Vb.Net
Public Function CalcolaMedia(ByVal N1 As Double, ByVal N2 As Double) As Double

Return (N1 + N2) / 2
End Function


Infine, la quarta differenza corrisponde all’utilizzo del comando “;”in C#, che stabilisce la 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


Esistono altre differenze, ma esse risultano comunque di minore rilievo.


La scelta perciò di un linguaggio piuttosto che un altro dipende da quali conoscenze di base si hanno e da quali progetti si vogliono realizzare.


Se non si hanno esperienze di programmazione, la strada migliore è quella di Vb.Net. Più intuitivo e semplice, può sfruttare completamente le funzionalità di .NET.
Se si programma in Java, passando a C# si semplifica la migrazione, avendo quest’ultimo una sintassi in stile C++.
Infine parliamo di prestazioni. A parità di funzioni utilizzate, che il software venga sviluppato con Vb.NET o C#, le prestazioni non cambiano assolutamente.

Commenti

Post popolari in questo blog

CAPM: Capital Asset Pricing Model

METODI DI PARSING: esempio in VB.NET e C#

DRAWSTRING E MISURESTRING: alcune funzioni grafiche di VB.NET