domenica 5 marzo 2017

C# and VB.NET Comparison


                                             







C# e VB.NET sono due dei linguaggi di programmazione disponibili sulla piattaforma di sviluppo di Microsoft, Visual Studio. L'appartenenza allo stesso ambiente di sviluppo li rende simili per molti aspetti, come il Common Intermediate Language e le funzioni messe a disposizioni dalla piattaforma.


                                                 


Il primo rappresenta un linguaggio nuovo, pur richiamando molti aspetti di C++ e Java, mentre il secondo rappresenta un'evoluzione, un aggiornamento del vecchio linguaggio Visual Basic, mantenendo perciò molti aspetti delle edizioni precedenti tra cui la sintassi.
I due linguaggi, essendo stati programmati per far parte della stessa piattaforma di sviluppo, differiscono quasi esclusivamente per la sintassi, infatti quasi tutti i comandi in C# hanno un equivalente in VB.NET e viceversa, tant'è che un programma scritto in uno dei due linguaggi può essere facilmente "tradotto" nell'altro tramite l'utilizzo di convertitori.

  1. SINTASSI: La sintassi di C# è molto simile a quella di Java e di C e ne riprende la cripticità, mentre quella di VB.NET costituisce un'evoluzione della sintassi originale del Visual Basic ed molto più descrittiva e chiara.
  2. LUNGHEZZA: Da un confronto concreto dei codici dei due linguaggi risulta che il codice scritto in VB.NET sia più lungo del corrispondente codice in C#, come nell'esempio seguente che riporta una funzione che prende in input due numeri e ne restituisce in output la media:

    //C#

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

    ‘Visual Basic .NET
    Public Function CalcolaMedia(ByVal N1 As Double, ByVal N2 As Double) As Double
    Return (N1 + N2) / 2
    End Function
  3. CASE SENSITIVE: C# è un linguaggio di programmazione case sensitive, ovvero tiene conto della distinzione tra lettere maiuscole e minuscole, mentre VB.NET non tiene conto di questa distinzione.
  4. CHIAREZZA: C# è caratterizzato da un'ampia varietà, motivo per cui il codice risulta essere poco uniforme e la lettura difficoltosa (cripticità già citata); VB.NET, invece, risulta più uniforme e conferisce maggiore chiarezza al codice. Questo è particolarmente evidente nei cicli, in cui C# prevede l'utilizzo delle parentesi graffe, mentre VB.NET utilizza delle istruzioni di fine-ciclo (End If, ...):

    //C#                                          'Visual Basic .NET
    if (a > 1) {                                  If (a > 1) Then
    ...                                      ...
    } else {                                 Else
    ...                                      ...
    }                                        End If


    Anche la dichiarazione delle variabili in VB.NET risulta essere più lineare, seppur più lunga, rispetto a quella in C#:

    //C#                                            'Visual Basic .NET
    Int valint;                                     Dim valint as Integer
    bool valbol;                                    Dim valbol as Boolean

Nessun commento:

Posta un commento