4

我想学习如何在 .net 中创建真正健壮的应用程序——具有容错能力并且能够承受意外情况的应用程序。我在哪里可以找到关于这个主题的文献/指南?到目前为止,我的运气并不好。

4

3 回答 3

4

我知道至少有几个资源。首先,MSDN 上有一篇非常有用的文章,标题为使用 .NET Framework 的可靠性特性保持代码运行

在设计可靠性功能时,Chris Brumme 也有一篇关于托管的帖子。这可以提供一些有用的背景信息

您可能会发现有用的搜索词包括“高可用性”“CER”和“受约束的执行区域”。

祝你好运!真正可用的代码是相当棘手的事情。:)

于 2008-12-09T17:16:55.680 回答
0

如果您从软件实现的角度来看,那么可能值得研究按合同设计 (DbC)

根据此消息来源,按合同设计的好处包括:

  • 更好地理解面向对象的方法,更普遍地理解软件构造。
  • 一种构建无错误的面向对象系统的系统方法。
  • 用于调试、测试以及更普遍的质量保证的有效框架。
  • 一种记录软件组件的方法。
  • 更好地理解和控制继承机制。
  • 一种处理异常情况的技术,为异常处理提供了一种安全有效的语言结构。

此外,我主张研究一种测试驱动开发 (TDD)方法,它应该有助于推动更健壮的设计。

于 2008-12-09T17:14:07.557 回答
0

就我个人而言,我发现 Stephen Toub 的文章是有关受限执行区域的最佳来源:使用 .NET Framework 的可靠性特性。最后,CER 是任何容错代码的基础,因此本文包含了您需要了解的几乎所有内容,并以清晰简洁的方式进行了解释。

话虽如此,您宁愿选择更激进的设计,在这种设计中立即诉诸应用程序域的破坏(或者在托管 CLR 时依赖于这种模式)。例如,您可以查看隔板模式(如果您对此模式感兴趣并面临复杂的数据流,则可能是反应式宣言)。

话虽如此,如果您在此之后无法完全恢复,“让它失败”的方法可能会适得其反,正如Ariane V 所证明的那样

于 2014-09-29T20:16:53.210 回答