Compartir vía


Escribir una aplicación Interoperable

Cada vez que una aplicación usa el mismo código en más de un controlador, ese código debe ser interoperable entre esos controladores. En la mayoría de los casos, se trata de una tarea fácil. Por ejemplo, el código para recuperar filas con un cursor de solo avance es el mismo para todos los controladores. En algunos casos, esto puede ser más difícil. Por ejemplo, el código para construir identificadores para su uso en instrucciones SQL debe tener en cuenta las convenciones de nomenclatura de mayúsculas y minúsculas, entre comillas y una parte, dos y tres partes.

En general, el código interoperable debe afrontar problemas de compatibilidad de características y variabilidad de características. La compatibilidad con características hace referencia a si se admite o no una característica determinada. Por ejemplo, no todos los DBMS admiten transacciones y el código interoperable debe funcionar correctamente independientemente de la compatibilidad con transacciones. La variabilidad de las características hace referencia a la variación de la manera en que se admite una característica determinada. Por ejemplo, los nombres de catálogo se colocan al principio de los identificadores en algunos DBMS y al final de los identificadores en otros.

Las aplicaciones pueden tratar la compatibilidad de características y la variabilidad de características en tiempo de diseño o en tiempo de ejecución. Para tratar la compatibilidad de características y la variabilidad en tiempo de diseño, un desarrollador examina los DBMS y los controladores de destino y se asegura de que el mismo código será interoperable entre ellos. Por lo general, esta es la forma en que las aplicaciones con interoperabilidad baja o limitada tratan estos problemas.

Por ejemplo, si el desarrollador garantiza que una aplicación vertical solo funcionará con cuatro DBMS concretos y si cada uno de esos DBMS admite transacciones, la aplicación no necesita código para comprobar la compatibilidad con transacciones en tiempo de ejecución. Siempre puede suponer que las transacciones están disponibles debido a la decisión en tiempo de diseño de usar solo cuatro DBMS, cada una de las cuales admite transacciones.

Para tratar la compatibilidad de características y la variabilidad en tiempo de ejecución, la aplicación debe probar las distintas funcionalidades en tiempo de ejecución y actuar en consecuencia. Por lo general, esta es la forma en que las aplicaciones altamente interoperables tratan estos problemas. Para problemas de compatibilidad con características, esto significa escribir código que hace que la característica sea opcional o escribir código que emula la característica cuando no está disponible. Para los problemas de variabilidad de características, esto significa escribir código que admita todas las variaciones posibles.

Esta sección contiene los temas siguientes.