Sto guardando il prossimo Visual Studio 2017 .
Nella sezione Incremento della produttività è presente un'immagine di Visual Studio utilizzata per sostituire tutte le occorrenze di var con il tipo esplicito.
Il codice apparentemente ha diversi problemi che Visual Studio ha identificato come "ha bisogno di risolvere".
Volevo ricontrollare la mia comprensione dell'uso di var in C #, così ho letto un articolo del 2011 di Eric Lippert chiamato blog Usi e abusi di digitazione implicita .
Eric dice:
- Use var when you have to; when you are using anonymous types.
- Use var when the type of the declaration is obvious from the initializer, especially if it is an object creation. This eliminates redundancy.
- Consider using var if the code emphasizes the semantic “business purpose” of the variable and downplays the “mechanical” details of its storage.
- Use explicit types if doing so is necessary for the code to be correctly understood and maintained.
- Use descriptive variable names regardless of whether you use “var”. Variable names should represent the semantics of the variable, not details of its storage; “decimalRate” is bad; “interestRate” is good.
Penso che la maggior parte dell'uso var nel codice sia probabilmente ok. Penso che sarebbe ok non usare var per il bit che legge ...
var tweetReady = workouts [ ... ]
... perché forse non è immediato al 100% di che tipo sia, ma anche in quel momento so abbastanza rapidamente che è un boolean
.
L'utilizzo di var per questa parte ...
var listOfTweets = new List<string>();
... mi sembra esattamente un buon uso di var perché penso che sia ridondante fare quanto segue:
List<string> listOfTweets = new List<string>();
Sebbene basato su ciò che Eric dice che la variabile dovrebbe probabilmente essere tweets piuttosto che listOfTweets .
Quale sarebbe la ragione per cambiare tutto il var
da usare qui? C'è qualcosa di sbagliato in questo codice che mi manca?