Как вы управляете внешними зависимостями для вашего приложения?

Существует много типов внешних зависимостей. Взаимодействие с внешними приложениями, компонентами или службами (например, Outlook для отправки электронной почты, TWAIN или WIA для сканирования, объекты ActiveX и веб-службы для различных целей и т. Д.).

Какова ваша стратегия обеспечения того, чтобы ваше приложение работало надежно и могло работать даже тогда, когда такие внешние зависимости (по бесчисленным причинам) недоступны?

Примечание. Код из внешних источников, включенный в ваш собственный исходный код, является другим типом внешней зависимости, но это не главное, что меня беспокоит здесь.

2 ОТВЕТА
РЕШЕНИЕ

Наша стратегия заключается в том, что наше программное обеспечение может быть только в исключительных случаях. Так что мы программируем довольно оборонительно:

  • Если почтовое соединение отсутствует, функция почты недоступна.
  • Графический вывод зависит от доступной видеокарты.
  • Только доступность сети обеспечивает распределенную функциональность.

И это еще не все.

3
12.12.2008 12:57:30

Также обратите внимание, что с внешними интерфейсами, так же как и с пользовательским вводом, вы не должны доверять этому вводу . Всегда проверяйте ввод и проверяйте согласованность (или существование) при вызове.

1
12.12.2008 13:36:41