Я пишу .NET On-the-Fly компилятор для CLR-скриптов. И есть дилемма: лучше ли выкинуть исключение на сборку сбоя или нет?Ошибка компиляции: выбросить исключение или нет?
Итак, какова наилучшая точка зрения, какой подход более подходит?
try
{
compiler.Compile(); // do not throws an exception only if build succeed
}
catch(CompilerException ex)
{
string err = ex.Message;
}
или
compiler.Compile(); // throws an exception only in case of crash, etc
if(!compiler.BuildSucceed)
{
string err = compiler.Output.ToString();
}
Я согласен - неудачная сборка является вполне допустимым результатом для компилятора, а не сценария ошибок, и поэтому его следует обслуживать самим методом, а не через исключения. +1. – razlebe