Halo, selamat datang di posting pertama saya mengenai fitur VB9, pada artikel ini saya akan membahas “Implictly typed local variabel” pada VB9.
Untuk mendeklarasikan variabel pada VB8 (.NET 2.0) anda dapat menuliskan kode sebagai berikut:
Ketika saya menuliskan deklarasi variable diatas, saya merasa deklarasi tersebut terlalu panjang, karena ketika kita memberikan nilai 999 atau “Erick” maka compiler seharusnya bisa tahu tipe data yang dimasukan kedalam variabel tersebut. Bagaimana jika ditulis seperti ini saja
lebih praktis bukan? namun pada VB8 jika ada mendeklarasikan variable seperti diatas maka compiler secara otomatis akan merubah tipenya menjadi tipe “object” / mengganggapnya sebagai “late binding” (option strict = off).
Ini akan sangat tidak efektif karena compiler melakukan proses “boxing” dan “unboxing” untuk merubah dari tipe string ke object, object ke string.
Pada VB9 diperkenalkan satu option baru yaitu “Option infer”, dengan mengaktifkan option ini menjadi “on” maka compiler secara otomatis dapat menebak tipe data apa yang dimiliki oleh variabel dari nilai yang kita berikan di sisi kanan. Secara default VB9 mengaktifkan pilihan option infer “on” atau anda juga dapat menuliskannya secara eksplisit pada kode.
Jika anda cek lagi tipe data dari variable yang ada di sisi kiri, maka tipe datanya akan secara otomatis menyesuaikan dengan nilai yang anda berikan disisi kanan.
Jika anda tidak mengeset option infer menjadi off maka otomatis tipe akan diubah menjadi object (late binding) seperti pada VB8.