2009-03-17 34 views
7

Java ve C# arasında geçiş yapıyorum ve C# kodlama yaparken özlediğim bir şey zorlanmış özel durum denetimi (her ne kadar ben Java kodlarken bazen gerçekten rahatsız edici buluyorum rağmen).İstisna avcısına ücretsiz bir alternatif var mı?

Exception Hunter'un, bir kod parçasının hangi özel durumları atlatabildiğini bilmenize yardımcı olabileceğinin farkındayım, ancak ücretsiz/daha ucuz bir alternatif var mı? Bu tür yazılım eklentileri için 200 sterlin gerçekten önemli bir sorun değil, sadece bir rahatsızlık olarak haklı çıkarıyorum. Ben zorlanan istisnalar şeyi anlamakla birlikte

+2

Sadece bırak gitsin adamım. Dünyayı kontrol edemezsin, biliyorsun. – Will

+1

Ama ben istiyorum. Gerçekten istiyorum. : p –

+0

BTW, I +1 dokümantasyon amaçları ile ilgilendiğim için, her bir özel durumun üstesinden gelebileceğime inandığım için değil ... – Will

cevap

8

Evet. Kodunuzda ücretsiz Microsoft Pex'u çalıştırın. Atılabilecek tüm istisnaları gösterecektir.

+0

Harika bir araç gibi görünüyor, bağlantı için teşekkürler. Yazık sürümü sadece VS Team sürümü ile çalışır. – Dave

+1

VS'nin Team sürümüne sahip değilseniz, aracı yine de komut satırından kullanabilirsiniz. Sanırım HTML çıktı üretir. –

+0

Bu, atılan istisnaları bulmak için statik analiz yapmaz, yalnızca yöntemleri, sezgisel olarak belirlenen parametrelerle çağırarak analiz eder. Birim testleri üretmek için tasarlanmıştır. http://exceptionalplugin.codeplex.com/ - Bu, işi yapacak bir ReSharper eklentisidir. Ajan Johnson bunun için iyi bir tamamlayıcıdır - http://code.google.com/p/agentjohnsonplugin/ –

0

, en çok ilginç istisnalar Eğer normalde dahil (hatta beklemek) olmaz olanlardır, örneğin ... ne kadar gerçekten gerekli değildir eminim. Örneğin, şu anda CF35'de bir CLI hatası gibi görünen, gerçekten var olan koddan aralıklı olarak MethodMissingException'u yükselterek mücadele ediyorum (vurgu: aralıklı olarak).

İstisnalarınızı belgelemek istiyorsanız, ///<exception ... >...</exception> işaretini kullanın. Bu konudaki diğer düşünceler için, belki de Vexing Exceptions (GhostDoc'un herhangi bir yardımcı olabilir mi?)

0

Get Exceptional web sitesi bir olasılıktır. Temel fikir, yazılım oluşturmanız ve bu siteye tüm istisnaların, bunları alabileceğiniz hesabınıza gönderilmesidir. Elbette kodunuzu okumaz ve istisnaların neler olduğunu görmezsiniz.

Henüz C# kitaplığı olup olmadığını bilmiyorum, ancak API çok zor değil.

İlgili konular