Как вы управляете внешними зависимостями для вашего приложения? - PullRequest
5 голосов
/ 12 декабря 2008

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

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

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

Ответы [ 2 ]

3 голосов
/ 12 декабря 2008

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

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

И есть еще.

1 голос
/ 12 декабря 2008

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

...