SORU
6 EYLÜL 2008, CUMARTESİ


Sihirli bir numara, ne olduğunu ve neden kötü?

Bir sihirbazlık numarası nedir?

Niçin kaçınılmalıdır?

Uygun olduğu durumlar var mı?

CEVAP
6 EYLÜL 2008, CUMARTESİ


Sihirli bir numara kod numarası doğrudan bir kullanımdır.

public class Foo {
    public void setPassword(String password) {
         // don't do this
         if (password.length() > 7) {
              throw new InvalidArgumentException("password");
         }
    }
}

Bunun için refactored olmalıdır:

public class Foo {
    public static final int MAX_PASSWORD_SIZE = 7;

    public void setPassword(String password) {
         if (password.length() > MAX_PASSWORD_SIZE) {
              throw new InvalidArgumentException("password");
         }
    }
}

Kod okunabilirliği arttırır ve daha kolay korumak için. GUI parola alanı boyutunu ayarlayın durumunda düşünün. Eğer sihirli bir numara kullanıyorum, max boyutu değiştiğinde, iki kod konumlarını değiştirmek zorundayım. Ben bir unutursanız, bu tutarsızlıklara yol açacaktır.

Bu FIRSATLAR tam sayı, Karakter ve Matematik dersleri gibi örneklerle dolu.

PS.: FindBugs ve PMD gibi statik analiz araçları kodunuzu sihirli numaraları algılar ve yeniden düzenleme öneriyor.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MC JIN'S OLD YouTube CHANNEL

    MC JIN'S OLD

    2 Kasım 2008
  • GenTechPC

    GenTechPC

    1 Temmuz 2007
  • Top10Series

    Top10Series

    26 Kasım 2008