¿Cómo gestionar las dependencias externas para su aplicación?
Pregunta
Hay muchos tipos de dependencias externas. Interfaz con aplicaciones externas, componentes o servicios (por ejemplo, Outlook para enviar correos electrónicos, TWAIN o WIA para escanear, objetos ActiveX y servicios Web para diversos fines, y así sucesivamente).
¿Cuál es su estrategia para asegurarse de que su aplicación es robusta, y puede funcionar incluso cuando dichas dependencias externas (por innumerables razones no están disponibles)?
Nota:. Código de fuentes externas incluidos en su propio código fuente es otro tipo de dependencia externa, pero eso no es todo lo que me preocupa aquí
Solución
Nuestra estrategia, es que nuestro software no puede, salvo en circunstancias excepcionales. Así programamos bastante defensiva:
- Si no hay conexión de correo, la funcionalidad de correo no está disponible.
- La salida gráfica depende de la tarjeta gráfica disponible.
- Sólo la disponibilidad de una red habilita la funcionalidad distribuida.
Y hay más.
Otros consejos
Tenga en cuenta también, que con interfaces externas, tanto como con la entrada del usuario, debe No confiar en que la entrada . Siempre validar la entrada , y comprobar la consistencia (o existencia) al llamar.