SORU
24 Aralık 2009, PERŞEMBE


Bir istisna kullanmak için ne zaman bir iddia ve ne zaman kullanılır

Benim kodda bir koşulu denetlemek için bir istisna kullanacağım çoğu, bir onaylama işlemi kullanmak için uygun bir zaman olduğunu merak ediyorum?

Örneğin,

Group group=null;
try{
    group = service().getGroup("abc");
}catch(Exception e){
    //I dont log error because I know whenever error occur mean group not found
}

if(group !=null)
{
    //do something
}

Bir onaylama buraya sığar ne gösterebilir misin? Bir onaylama kullanmalıyım?

Hiç üretim kodu onaylamaları kullanın ve sadece birim testleri iddialar gibi görünüyor. Çoğu durumda, sadece özel durum yukarıdaki gibi bir kontrol yapmak için kullanabilirsiniz biliyorum, ama bunu yapmak için uygun bir yol olduğunu bilmek istiyorum "". profesyonelce

CEVAP
24 Aralık 2009, PERŞEMBE


Aklımı (liste eksik olabilir, ve bir yorum sığmayacak kadar uzun):

  • parametreleri ortak veya korumalı yöntemleri ve kurucular geçti denetlerken istisnalar kullanın
  • kullanıcı ile etkileşim sırasında veya istemci kodu olağanüstü bir durumdan kurtulmak için beklediğiniz zaman istisnalar kullanın
  • özel durumlar ortaya çıkabilecek sorunları çözmek için kullanın
  • ön-koşulları, sonrası Koşulları ve değişmezler özel/iç kod kontrol ederken onaylamaları kullanın
  • iddialar kendinizi veya geliştirici ekibi için geri bildirim sağlayın
  • çok olası aksi halde olacak olan şeyler için kontrol ederken kullanmak iddialar uygulamanız ciddi bir kusur var demektir
  • iddialar size (sözde) doğru olduğunu bildiğimiz şeyler devlet için kullanın

Diğer bir deyişle, özel durumlar iddialar onun doğruluğu adresi ise uygulamanızın sağlamlık adresi.

İddialar vardır tasarlanan daha yazmak için kullanabilirsiniz onları hemen hemen her yerde kullanıyorum bu başparmak kuralı: daha bir onaylama işlemi deyimi görünüyor aptal, daha değerli ve daha fazla bilgi gömer. Doğru şekilde hareket etmemek için bir program hata ayıklama, kesinlikle daha belirgin başarısızlık olasılıkları deneyimlerine dayanarak kontrol edecektir. Sadece gerçekleşmesi imkansız sorunlar için kontrol edecektir: bu iddialar çok yardımcı ve zaman kazanın tam olarak ne zaman.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonathan Morrison

    Jonathan Mor

    24 Mart 2010
  • monkophile

    monkophile

    25 Temmuz 2007
  • Rachel Talbott

    Rachel Talbo

    26 Ocak 2011