这是软件engg中的一般问题。 低级别处理错误可能代码太多。另一方面,在最高级别处理错误可能会导致信息丢失。 你觉得呢?将错误传播给父母,然后是盛大的父母是好主意吗?
0
A
回答
0
这一切都取决于要求是什么。
在某些情况下,您确实希望唤起呼叫者的异常,因为呼叫者可能会更好地处理该问题。 发送电子邮件可能不总是系统的关键,但它可能是当它需要告诉你有人登录到你的银行帐户。
另一方面,您不希望冒泡应该由被调用的方法处理的异常。 如果您正在编写的内容是通过FTP下载文件,那么如果您打算稍后再试一次,则不希望每次断开连接都会打扰调用方。
这又取决于当时的情况,而不是经验法则。
1
它确实取决于程序能够在哪里处理错误,以有用的方式报告它,并继续一些有用的处理。
在我编写的UI代码中,例如在处理事件时,我可能调用私有方法,然后调用遇到错误的一些实用程序方法。在实用方法中处理它没有多大意义,因为它可能不知道正在处理的事件以及向用户报告错误的所有方法。事件处理的第一级可能处于更好的状态,要么停止处理,要么进行必要的调整。另一方面,如果实用方法可以合理地处理所有将被使用的情况下的错误(也许有一些重试逻辑或计划B逻辑),那么它可能在这里。
但是,对于我所完成的大部分UI代码,它通常会传递到更高的级别,因为它可以更好地处理特定情况。
相关问题
- 1. jquery伟大的盛大父母
- 2. 父母的父母的父母
- 3. 将props.navigator传递给原生父母
- 4. 布置父母的父母
- 5. 将子女分配给父母之一的父母之一
- 6. 绝对视图位置重力陪着父母,而不是父母的父母
- 7. 主播孩子在锚父母元素错误
- 8. 错误:父母为空 - angular.js
- 9. 如何检查父母的父母的ID是否等于
- 10. 窗户父母的意思
- 11. Buildnumber没有从父母传播到childern
- 12. 父母的措施给儿童大小
- 13. CSS:如何传播从照片到父母或祖父母元素的宽度?
- 14. LINQ组由父母和父母的父母
- 15. jQuery的父母()和父母()。父母()只看到一个层次?
- 16. 明确继承遗产清单“盛大父母接口
- 17. 在盛大儿童班致电祖父母方法
- 18. SpriteKit父母(s)之后父母的SKNode视觉位置是否被旋转?
- 19. 如果hasClass然后addClass父母
- 20. 获取div的父母的父母
- 21. Knockout foreach $ parent指示祖父母而不是父母
- 22. 将React道具从小孩传递给父母,然后获取块
- 23. 覆盖父母的父母在PHP
- 24. SASS - 父母的参考父母
- 25. 使用JQuery获得父母的父母
- 26. 父母对父母沟通的反应
- 27. C#-Threads和父母传递给孩子
- 28. 通过Webkit通知回传给父母
- 29. jquery事件触摸传播父母给孩子(链接)
- 30. 父母形式给予NullReferenceException
我认为这是http://programmers.stackexchange.com/的一个很好的问题。 – 2010-12-10 04:51:32