0Pricing
C# Academy · Lezione

Quando evitare var

Mantenga il codice leggibile specificando il tipo quando necessario.

Quando evitare var è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 4 lezioni in totale.

var può nascondere il tipo

var è pratico, ma può nascondere il tipo effettivo di una variabile, compromettendo la leggibilità per chi leggerà il codice in seguito.

using System;

class Program {
    static void Main() {
        var x = Compute();
        Console.WriteLine(x);
    }
    static int Compute() { return 42; }
}

Valori restituiti non chiari dai metodi

Quando il nome di un metodo non rivela il tipo restituito, preferisca un tipo esplicito, in modo che sia chiaro ai lettori che cosa stanno utilizzando.

using System;

class Program {
    static double Process() { return 3.14; }
    static void Main() {
        double value = Process();
        Console.WriteLine(value);
    }
}

Sorpresе con i tipi numerici

var sum = 0 è un int. Se si aspetta un double, ciò può causare errori di divisione intera.

using System;

class Program {
    static void Main() {
        double sum = 0;
        sum += 7 / 2.0;
        Console.WriteLine(sum);
    }
}

Sia esplicito per le interfacce

Se desidera programmare rispetto a un'interfaccia, la dichiari esplicitamente: var sceglierebbe invece il tipo concreto.

using System;
using System.Collections.Generic;

class Program {
    static void Main() {
        IList<int> items = new List<int> { 1, 2 };
        Console.WriteLine(items.Count);
    }
}

Inizializzatori distanti

Quando l'inizializzatore è un'espressione lunga o annidata, un tipo esplicito documenta l'intento meglio di var.

using System;

class Program {
    static void Main() {
        int finalScore = (10 + 5) * 2 - 3;
        Console.WriteLine(finalScore);
    }
}

Evitarlo per chiarezza con i tipi primitivi

Molti team scrivono il tipo esplicito per i primitivi semplici, così il tipo di numero desiderato è inequivocabile.

using System;

class Program {
    static void Main() {
        long bigCount = 5000000000;
        Console.WriteLine(bigCount);
    }
}

var non può essere un campo

var è utilizzabile solo per le variabili locali. Campi, parametri e tipi restituiti devono essere sempre espliciti.

using System;

class Program {
    static int field = 100;
    static void Main() {
        Console.WriteLine(field);
    }
}

Inferenza numerica mista

Faccia attenzione: var avg = total / count con due int rimane un int. Renda esplicito l'intento quando sono necessari valori decimali.

using System;

class Program {
    static void Main() {
        int total = 7, count = 2;
        double avg = (double)total / count;
        Console.WriteLine(avg);
    }
}

Quando le guide di stile differiscono

Alcune guide indicano di "usare var solo quando il tipo è evidente dal lato destro". Seguire una regola coerente aiuta l'intero team.

using System;

class Program {
    static void Main() {
        var customer = new string("Ann"[0], 3);
        Console.WriteLine(customer);
    }
}

Bilanciare praticità e chiarezza

L'obiettivo è scrivere codice leggibile. Utilizzi var quando è utile e i tipi espliciti quando rendono il codice più chiaro.

using System;
using System.Collections.Generic;

class Program {
    static void Main() {
        var lookup = new Dictionary<int, string>();
        int key = 1;
        lookup[key] = "one";
        Console.WriteLine(lookup[1]);
    }
}

Una regola pratica

Se non è possibile capire il tipo leggendo solo la riga, lo si scriva esplicitamente. In caso contrario, var va bene.

using System;

class Program {
    static void Main() {
        var greeting = "Hello";
        decimal price = 19.99m;
        Console.WriteLine(greeting + " " + price);
    }
}

Verifica rapida

Verifichi il proprio giudizio su quando evitare var.

Riepilogo

Eviti var quando nasconde un tipo importante, quando è rilevante il tipo numerico (int o double), quando desidera utilizzare un'interfaccia o quando il nome di un metodo non rivela il tipo restituito.

var funziona solo per le variabili locali. Una buona regola è: se la riga da sola non rivela il tipo, lo si scriva esplicitamente.

Domande Frequenti

La lezione «Quando evitare var» è gratuita?

Sì — il testo completo di «Quando evitare var» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 4 lezioni in totale.

Cosa imparerò in «Quando evitare var»?

Mantenga il codice leggibile specificando il tipo quando necessario. Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare C# Academy?

Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Quando evitare var»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione C# Academy?

Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Inferenza del tipo delle variabili locali con var
  2. Quando evitare var
  3. Il tipo dynamic
  4. Espressioni new con tipo di destinazione
← Torna a C# Academy