Dari MSDN :
Namun, penggunaan var setidaknya memiliki potensi untuk membuat kode Anda lebih sulit dipahami oleh pengembang lain. Karena alasan itu, dokumentasi C # umumnya menggunakan var hanya saat diperlukan.
Saya benar-benar tidak suka mengetik secara implisit. Di permukaan itu cenderung membuat kode lebih mudah dibaca, tetapi dapat menyebabkan banyak masalah di jalan. Jika dev mengubah penginisialisasi variabel, katakanlah, dari
var myFloat=100f;
untuk
var myFloat=100;
atau
var myFloat=100.0;
Jenisnya akan berubah, menghasilkan seluruh kesalahan kompiler atau, jika itu dalam tampilan web dan Anda tidak menggunakan langkah post-build untuk mengkompilasi pandangan Anda, seluruh kesalahan runtime yang tidak akan ditangkap tanpa efektif pengujian pra-penempatan.
Mengetik tersirat juga tidak berfungsi di mana-mana (dari tautan MSDN yang sama)
var hanya dapat digunakan ketika variabel lokal dideklarasikan dan diinisialisasi dalam pernyataan yang sama; variabel tidak dapat diinisialisasi ke nol, atau ke grup metode atau fungsi anonim.
var tidak dapat digunakan pada bidang di lingkup kelas.
Variabel yang dideklarasikan dengan menggunakan var tidak dapat digunakan dalam ekspresi inisialisasi. Dengan kata lain, ungkapan ini sah: int i = (i = 20); tetapi ungkapan ini menghasilkan kesalahan waktu kompilasi: var i = (i = 20);
Beberapa variabel yang diketik secara implisit tidak dapat diinisialisasi dalam pernyataan yang sama.
Jika jenis bernama var berada dalam ruang lingkup, maka kata kunci var akan memutuskan untuk nama tipe itu dan tidak akan diperlakukan sebagai bagian dari deklarasi variabel lokal yang diketik secara implisit.
Menjaga kode Anda konsisten (dalam hal ini, menggunakan pengetikan eksplisit di mana-mana) adalah hal yang sangat, sangat baik. Menurut pendapat saya, var
malas dan tidak memberikan manfaat nyata, dan memperkenalkan titik kegagalan potensial lain dalam proses yang sudah kompleks.
Pembaruan 2017
Saya benar-benar berubah pikiran. Ketika bekerja di C #, saya menggunakan var
sebagian besar waktu (kecuali hal-hal seperti variabel tipe antarmuka dan semacamnya). Itu membuat kode singkat yang meningkatkan keterbacaan. Namun, tetap - perhatikan apa jenis sebenarnya diselesaikan.