c# – 在方法的开头到结尾处错误处理的优缺点是什么
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 在方法的开头到结尾处错误处理的优缺点是什么,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1401字,纯文字阅读大概需要3分钟。
内容图文
在我的程序员的经验中,我尽可能地混合错误处理……我创造了我的个人风格.
但是,我想听听你认为在开始时和方法结束时错误处理的优缺点.
处理开头:
public String GenerateSomeStringData(String data, int value)
{
if (data == null)
throw new ArgumentNullException("data");
if (value <= 0)
throw new ArgumentException("value must be greater than zero");
int dataValue;
if (!int.TryParse(data, out dataValue))
throw new InvalidOperationException("data does not contain an integer");
return dataValue * 4 + value / 12;
}
最后的处理:(同样的例子)
public String GenerateSomeStringData(String data, int value)
{
if (data != null)
{
if (value > 0)
{
int dataValue;
if (int.TryParse(data, out dataValue))
{
return dataValue * 4 + value / 12;
}
else
throw new InvalidOperationException("data does not contain an integer");
}
else
throw new ArgumentException("value must be greater than zero");
}
else
throw new ArgumentNullException("data");
}
在决定如何处理此问题时,您使用什么标准?可读性,可维护性,简洁性?
解决方法:
对于执行方法,输入的有效性应为precondition – 因此我会(并且确实)首先执行错误处理.
这具有以下优点:
>解析人类更容易:
首先验证先决条件,然后
执行逻辑(通常
导致一些后置条件)
>明确分离关注点
错误处理和执行逻辑
在您的方法中:验证逻辑不会在执行逻辑中“撒入”
如评论中所述,您必须区分违反前提条件的无效输入和触发错误条件(例如抛出异常)和构成边缘条件的有效输入(即需要一些特殊逻辑来处理).后面的例子我将在你的方法的执行逻辑开始时断言前提条件后单独处理.
内容总结
以上是互联网集市为您收集整理的c# – 在方法的开头到结尾处错误处理的优缺点是什么全部内容,希望文章能够帮你解决c# – 在方法的开头到结尾处错误处理的优缺点是什么所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。