当前位置:  开发笔记 > 程序员 > 正文

什么应该包含在最先进的错误和异常处理策略中?

如何解决《什么应该包含在最先进的错误和异常处理策略中?》经验,为你挑选了1个好方法。

我知道这是一个非常广泛的问题,但是短暂的"取决于"的答案将不被接受.战略诞生于处理广泛的问题.

    在设计错误和异常处理策略时,应用程序设计人员应该考虑哪些问题?

    策略将如何根据软件类型(COTS,内部业务应用程序,咨询软件,游戏,托管Web应用程序,嵌入式等)而有所不同?软件类型重要吗?

    道德,政治和法律问题?

    关于错误处理(用户,开发人员,业务支持,管理)的各种观点.

我会探讨的一些想法:

各种错误报告路由(即UI,日志记录,自动管理通知).

纵深防御和健壮性(故障转移应急和故障安全机制,针对尚未知晓的问题进行恢复).

公平对待用户和客户(即最小化对软件用户和软件服务的其他人的影响).

我正在寻找类似的想法和概念列表.

如果我需要进一步澄清问题并感谢所有人的贡献,请使用评论指出我!


常问问题

开发平台(Java,.NET,移动) - 从开发人员的角度来看肯定会对策略​​的最终实现细节产生一些影响,但从用户的角度来看则更少.

愚人节肯定不是.我被要求处理的大多数遗留系统没有明确的错误处理策略.

这可以成为社区维基吗? 不,这似乎是一个很好的问题,很难想出好的问题.

这个策略是什么意思?长期计划,提供方向,重点,为错误和异常处理带来一致性和协调性.如果有一个更大的团队从事软件工作,那么该策略可以通过书面形式进行制定和分发.

这似乎是重复的问题(见在Java或C异常管理的最佳实践和哪个,为什么你喜欢的异常或返回代码),这些问题处理上的错误处理(主要是开发者)某个角度来说,我想了解更多关于其他观点以及它们如何为整体战略做出贡献.



1> Eric Petroel..:

这里有很多可能的答案,但我会对它进行分析.

在设计错误和异常处理策略时,应用程序设计人员应该考虑哪些问题?

    当你有多个开发人员时,应该很容易"挂钩"你的错误处理框架,否则人们就不会使用它.

    明智地使用事务来维护数据一致性.我看到应用程序始终在进程中途发生故障并导致奇怪的数据不一致,因为整个操作没有正确回滚.

    处理异常时考虑关键性.例如,如果您有在线订购系统,并且该工作流程的一部分是将电子邮件发送给网站所有者,让他们知道已下达新订单.如果发送该电子邮件失败,用户是否会收到错误并取消整个订单?

策略将如何根据软件类型(COTS,内部业务应用程序,咨询软件,游戏,托管Web应用程序,嵌入式等)而有所不同?软件类型重要吗?

    对于桌面类型或嵌入式应用程序,在调查错误报告时,记录有关环境的信息(操作系统版本,硬件,运行的其他应用程序等)非常有用.

    对于企业应用程序和Web应用程序,诸如电子邮件错误通知,SMS消息传递以及与ECO工具(例如Tivoli)的集成之类的东西变得非常有用.

道德,政治和法律问题?

我唯一能想到的就是桌面应用程序 - "手机之家"类型的应用程序通常不受欢迎,特别是如果他们提交有关可能敏感的用户机器的信息.

关于错误处理(用户,开发人员,业务支持,管理)的各种观点.

    从用户的角度来看,尝试通过设计界面来避免错误,使得他们很难犯错误.不要问用户可能无法回答的问题(中止,重试,任何人失败?)

    从开发人员的角度来看,您需要尽可能多的信息来帮助诊断发生的事情 - 堆栈跟踪,环境信息等.

    从业务支持和管理的角度来看,他们想知道如何处理错误(主要是在企业环境中) - 谁负责应用程序(我打电话给/ page/etc?)以及关键性以及任何可能的副作用(例如,如果此批处理作业失败,那将影响哪些业务流程?).书面文件是你的朋友.

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有