如何管理应用程序的外部依赖项?

Ola*_*døy 5 language-agnostic defensive-programming robustness external-dependencies

有许多类型的外部依赖项.与外部应用程序,组件或服务连接(例如,Outlook用于发送电子邮件,TWAIN或WIA用于扫描,ActiveX对象和Web服务用于各种目的,等等).

您确保应用程序是健壮的,并且即使这些外部依赖项(由于无数原因)不可用时也可以运行的策略是什么?

注意:您自己的源代码中包含的外部源代码是另一种外部依赖项,但这主要不是我在这里所关注的.

Too*_*the 3

我们的策略是,除非在特殊情况下,否则我们的软件可能不会这样做。所以我们的编程相当防御性:

  • 如果没有邮件连接,则邮件功能不可用。
  • 图形输出取决于可用的显卡。
  • 只有网络的可用性才能实现分布式功能。

还有更多。