私はFailFastプリンシパルをフォローしています。コンストラクターのパラメーター引数をチェックするために、Assertionクラスを配置するのが良い習慣かどうか疑問に思っています。
例えば:
public static class Assertions
{
public static void ParamterIsNotNull(object subject, string paramName = "")
{
if (subject == null) throw new ArgumentNullException(paramName, "Paramter cannot be null");
}
}
および使用中:
public class Test
{
public Test(object obj)
{
Assertions.ParamterIsNotNull(obj, "obj");
}
}
これは、例外スローを別のクラスにオフロードするための良い方法ですか、それともコンストラクターで直接例外をスローする方が良いですか?