【发布时间】:2015-09-19 15:05:51
【问题描述】:
假设我有一个存在于库/框架中的方法,我想知道这些方法是否应该抛出异常或静默失败;例如:
void PerformAction(Item item)
{
// throws NullReferenceException if item is null
item.DoThis();
}
void PerformAction(Item item)
{
//fails silently
if(item != null)
{
item.DoThis();
}
}
哪个解决方案更好 - 或者这有点主观的问题?
【问题讨论】:
-
这将是非常主观的,尽管我相信大多数声音会说你应该主要是
throw。至少出于调试目的。如果框架有日志记录机制,如果你不愿意抛出,你应该记录失败的任务。
标签: c# .net oop frameworks