Non mi piace per niente la keyword var che verra'
inserita nel nuovo C# 3.0
Questa permette di definire variabili senza specificarne il
tipo, una tecnica chiamata Type
Inference:
var i = 5;
var name = "John";
var mytype = List<float>;
var myret = function();
Ok, non e' weakly-typed come puo sembrare perche' il compilatore assegna il tipo
a compile-time e non ci saranno problemi di performance a runtime.
Ma secondo me, diminuisce di
brutto la leggibilita' del codice. E' vero posso sempre non usarla, ma quando mi
arriva il codice di qualcun'altro da modificare?
E' anche vero che e'
necessaria per supportare i tipi anonimi che verrano inseriti in C# e
anche in LINQ
(per esempio i valori di ritorno di una SELECT).
Ho pensato, almeno nel codice normale (non in LINQ) siccome il tipo e'
assegnato a compile-time, perche' non fare un meccanismo del tipo: quando il
compilatore compila la riga e assegna il tipo alla variabile, l'IDE sostituisce
automaticamente la keyword var con il tipo associato.
Mah, non sono convinto, per adesso non mi piace, ma poi in futuro magari mi
converto...
powered by IMHO 1.3