在 Validate() 方法上引发异常是一种好的做法,还是最好返回 bool 值?

2022-09-01 04:16:41

是否建议从验证方法中引发异常,例如:

ValidateDates();
ValidateCargoDetails();

除此之外:是否经常使用强大的验证设计模式?


答案 1

我建议返回一个包含 ValidationFailures 的 ValidationResult 对象。切勿将异常用作逻辑编码的一部分。例外情况适用于例外情况


答案 2

我会说这完全取决于你在做什么/如何进行验证。但是,在一天结束时,开发人员始终可以选择忽略返回的结果(这是他们的问题),如果不编写显式代码来这样做,他们就无法忽略异常。


推荐