Üretim kodunda her zaman etkin olmadığından java assert
anahtar sözcüğünü sevmiyorum. Kullanılacak iyi bir "ProductionAssert" sınıfı arıyorum, bu her zaman belirtilen iddiaları çalıştırır.Üretim kullanımı için iyi bir iddia sınıfı mı? Java'nın Groovy's PowerAssert'ine denk mi?
Bir aday Guava's Preconditions. İyi, ama biraz sınırlı (örneğin, assertEquals()
, assertNull()
, assertGreaterEquals()
).
JUnit veya başka bir test çerçevesi de dahil olmak üzere bir alternatif ... ama sadece basit bir assert sınıfı için tüm bir test çerçevesine bağlı kalmak konusunda isteksizim.
Groovy'de programlama yapıyor olsaydım, PowerAssert kullanırdım.
Java için iyi bir "ProductionAssert" sınıfı var mı?
P.S. - bir seçenek nihayet Java Contracts gibi bir şey kontrol etmektir ... ama ben şu anda mutlak minimal, sıfır sürtünme, sadece sınıfta inşa işlemi türünde herhangi bir değişiklik yapmadan açılan ... Sözleşmelerin bu açıklamaya uygun olduğundan emin değilim. Açıkçası
public void thing(String foo){
Assert.hasText(foo, "'foo' is required");
}
sizin kullanmadığınız bahar o zaman bu gidiş değilse:
o sıfırdan bir PowerAssert sınıfını yazmaya değmez mi? – vulkanino
@vulkanino - Sadece bunu yapmaya başladım ... ama iyi bir neden olmasa bile, genellikle yeniden kullanımdan ziyade yeniden kullanmayı tercih ederim. – ripper234
bana da evet, ama "mutlak minimal, sıfır sürtünme" yazdınız ... – vulkanino