【发布时间】:2011-02-16 05:54:15
【问题描述】:
我正在阅读一些 C# 书籍,并进行了一些练习,不知道该怎么做,或者不确定问题是什么意思。
问题:
在一家公司工作了一段时间后,您作为知识渊博的开发人员的技能得到认可,并且您被赋予“监管”在源代码 (C#) 中为企业应用程序执行异常处理和跟踪的任务正处于不断的增量发展中。产品架构师设定的两个目标是:
整个应用程序中 100% 的方法必须至少有一个标准的异常处理程序,使用 try/catch/finally 块;更复杂的方法还必须有针对特定异常的额外异常处理
所有控制流代码都可以选择性地写入“跟踪”信息,以在传统调试器不可用的情况下(例如,在登台和生产服务器上)帮助在运行时调试和检测应用程序。
(我不太了解这些标准,我来自java世界,java有两种异常,检查异常和未检查异常。开发人员必须处理已检查异常,并进行日志记录。关于未检查异常,可能还是要记录,但大多数时候我们只是扔掉它。然而到了 C#,我该怎么办?)
问题的问题:
列出您将为开发团队遵循的规则,以及您执行规则以实现这些目标的方式。
您将如何确保所有现有代码都符合产品架构师指定的规则?尤其是,哪些考虑因素会影响您为确保所有现有代码都遵守而制定的工作计划?
【问题讨论】:
-
如果你问我,目标 1 是一个很大的 WTF。如果你不能对异常做任何有用的事情,不要试图捕捉它。充其量,用一些额外的信息记录异常并重新抛出它。
-
@Kyle - 不......我正在阅读一些在线书籍,他们使用面试问题作为消费税,这就是为什么我对阅读它们很感兴趣......如果我没有错,这应该成为面试题之一...
-
“整个应用程序中100%的方法必须至少有一个标准的异常处理程序,使用try/catch/finally块”......请不要这样做......
标签: c# exception-handling bug-tracking