Daily Snippet, Developer to developer

Refactor! it! now! for VB 2005

Defaultnya Visual Studio 2005 lebih memanjakan developer C# dalam produk installernya. Contohnya ada snippet Test Driven Development, NUnit dan menu Refactor. Refactor sendiri merupakan pasangan ideal dengan NUnit dalam metodologi pengembangan software Extreme Programming (XP).

Tapi Developer Express cepat tanggap membuat add-on Refactor! untuk VB 2005 dan 2008, for free!. Dalam proyek skala medium sampai besar akan terasa sekali manfaatnya. Mengurangi duplikasi kode (jika kita disiplin dalam pemberian nama method) sampai meningkatkan indera ke-tujuh kita (dalam coding) akan kebutuhan objek baru. Tentu saja tool lain seperti FxCop juga akan berguna. Saya akan memberi sedikit contoh sederhana dalam Refactor.

1. Rename, tinggal klik aja.

1

Penggantian nama method (dalam contoh FillDi ke FillDic) otomatis akan berlaku ke semua class yang menggunakan method tersebut.

Tidak hanya nama method, tapi juga variabel.

2

Ada 2 pilihan :

Widen Scope, dimana variabel kita akan ditempatkan di luar method yang tentu saja dapat diakses semua method dalam kelas. Refactor! akan mengarahkan pointer ke posisi paling atas (tapi masih dalam scope class). Tekan Up atau Down untuk mengganti posisi baris, dan jika deal!, tekan Enter.

Split Initialization from Declaration, ini akan memisahkan inisialisasi dari variabel yang dideklarasikan, hasilnya adalah MyInt = 0.

2. Jika memilih Widen Scope-pun kita masih dikasih 2 pilihan lagi. Yaitu Encapsulate Field sebagai read-only, atau read-write. Artinya Refactor akan membuat variabel kita menjadi Properties read-only (hanya ada Get) atau read-write (Get-Set).

3. Mau mengubah logika dalam suatu If-Else, gampang …

3

Dalam contoh saya mempunyai If-Else : If Dic.ContainsKey(key) = false then Dic.Add(key, value) Else Dic.Item(key) = value.

Refactor! akan membaliknya menjadi If Dic.ContainsKey(key) <> false then Dic.Item(key) = value Else Dic.Add(key, value).

Terlihat Refactor! juga mengganti operator = dengan <>.

4. Jika saya ingin menambah parameter, mengubah urutan parameter dalam suatu method, atau bahkan membuat overload method dengan pengurangan parameter atau benar-benar parameter baru, Refactor! melakukannya.

4

5. Apa yang diberikan ketika saya men-select logika If-Else?

5

  • Pertama akan diberi pilihan membuat statement With (khas VB), untuk meringkas script menjadi :
    With Dic
    If .ContainsKey(key) = False Then .Add(key, value) Else .Item(key) = value
    End With
  • Kedua adalah Extract Method, yaitu selected object akan dibuatkan suatu method baru, plus parameter inputan yang dibutuhkan. Nama method baru juga akan dibuatkan (dalam contoh, FillDicExtracted).

6

Dari sebuah method yang sederhana saya bisa melakukan bermacam-macam teknik Refaktor dengan Refactor!, dan mungkin masih banyak yang bisa dilakukan. Saya bertanya-tanya teknologi apa yang digunakan untuk mencoret-coret editor saya seperti gambar diatas.

Tags: , ,

Standard

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s