APEX 03 - 07 - Trabajar en Correcciones y Funcionalidades en paralelo mientras se minimizan los conflictos (Segunda Parte)
En esta septima entrega de la SAGA Ciclo de Desarrollo para aplicaciones APEX veremos la segunda parte sobre cómo Oracle APEX permite que los equipos de desarrolladores trabajen en paralelo en una instancia de desarrollo compartida, modularizar tus aplicaciones permite minimizar aún más estos conflictos.
Modulariza tu aplicación para minimizar aún más los conflictos
Además de utilizar el bloqueo de páginas, también puedes modularizar una aplicación de mayor tamaño en múltiples “mini” aplicaciones más pequeñas para minimizar aún más los conflictos entre los desarrolladores.
Ensambla soluciones más grandes a partir de múltiples “miniaplicaciones”
Mientras que las aplicaciones más pequeñas no lo requieren, crear soluciones más grandes como un conjunto de aplicaciones más pequeñas te permite que cada “mini aplicación” tenga una cantidad razonable de páginas para que un equipo pequeño pueda gestionarlas.
👀Cuando el equipo que trabaja en una aplicación es pequeño, cada miembro del equipo sabe lo que están haciendo los demás, por lo que es más fácil evitar pisarse entre sí. Los cambios en la lógica de la aplicación que se encuentran en paquetes PL/SQL específicos de una mini aplicación determinada no correrán el riesgo de entrar en conflicto con cambios realizados en la lógica de la aplicación de otras mini aplicaciones.
Comparte componentes, páginas y paquetes desde una aplicación común
📕Por supuesto, algunas páginas, componentes y lógica de aplicación serán útiles para todas las miniaplicaciones, entonces, organiza esos elementos compartidos en una aplicación "común". Las mini aplicaciones pueden suscribirse a componentes de esta aplicación de BIBLIOTECA, acceder a sus páginas e invocar las API de PL/SQL desde sus paquetes.
Al identificar claramente los elementos comunes desde el principio, los desarrolladores saben que los cambios en componentes, páginas o códigos comunes pueden afectar a todos en el equipo.
Suscríbe, publica y actualiza tus componentes comunes
📌En una mini aplicación, para suscribirse a un componente como una lista de la aplicación común, usamos el botón “Copiar” que se encuentra en la lista en los componentes compartidos de la aplicación e indicamos que deseamos copiar la lista desde otra aplicación.
Como se muestra en la Figura 1, seleccionamos la aplicación común en la lista de aplicaciones, eligimos la lista para copiar y nos aseguramos de que el interruptor “Suscribir” esté activado.
Dado que un menú de navegación es solo una lista utilizada para este propósito particular, este es el procedimiento que seguiría en cada mini aplicación para que todos compartan una lista de menú de navegación común, por ejemplo.
Figura 1: Suscribiendo a una lista desde una aplicación común
Para otros tipos de componentes compartidos como Lista de valores, la suscripción se realiza como parte del asistente de creación. Después de indicar que deseamos crear una copia de una Lista de Valores desde otra aplicación y eligiendo la aplicación común, la Figura 2 muestra cómo podemos configurar la acción Copiar y Suscribir para las LOV a las que deseamos suscribirnos.
Figura 2: Suscribiendonos a una o más listas de valor desde la aplicación común
Habilita la autenticación entre las mini aplicaciones
De forma predeterminada, cada aplicación APEX autentica su propia sesión por separado. Sin embargo, si hemos modularizado nuestra solución en mini aplicaciones separadas, querremos que los usuarios finales naveguen sin problemas a cualquier página en la única aplicación lógica que utilizan para realizar su trabajo.
Para lograr esto, como se muestra en la Figura 3, configuraremos el tipo de Sesión Compartida en “Compartida en el Espacio de Trabajo” en el esquema de autenticación que utilizan nuestras mini aplicaciones y su aplicación común. Después de configurar esto, los usuarios finales iniciarán sesión solo una vez y luego podrán visitar cualquier página disponible en cualquiera de las aplicaciones modularizadas.
Figura 3: Seteando el tipo de Sesión Compartida en el esquema de autenticación
Considera la posibilidad de separar los objetos de esquema por mini aplicación
Si bien no es necesario, algunos equipos prefieren que cada mini aplicación utilice su propio esquema de base de datos independiente y específico para ese módulo. Utilizan los permisos y sinónimos apropiados para permitir que una mini aplicación exponga selectivamente sus tablas, vistas y paquetes PL/SQL a otros módulos según sea necesario.
Este enfoque brinda más control a los desarrolladores de mini aplicaciones sobre qué objetos de esquema pueden considerar "privados" para su propio módulo y cuáles han hecho "públicos" para las mini aplicaciones de otros equipos, otorgándoles los privilegios adecuados.
Un equipo que adopte esta técnica puede hacer con confianza cambios en sus objetos de esquema privados del módulo, sabiendo que no afectarán inadvertidamente a otros módulos.
Juntos, creamos las aplicaciones del futuro!
Mi nombre es José Preda.
* José es Analista de Sistemas e Ingeniero de Software con especializaciones en tecnologías de Oracle, Microsoft, redes, infraestructura tecnológica y gestión de recursos humanos. Posee más de 30 años de experiencia en el área de tecnología, es de Paraguay, vive y trabaja en San Luis, Argentina. Fue consultor, capacitador y soporte técnico para Base de Datos y herramientas de Oracle, desde el año 2013 es miembro activo del Grupo de Usuarios Oracle de Argentina del cual es miembro del directorio desde el año 2023. Es CEO de su propia Consultora: Soft San Luis, una startup especializada en brindar formación profesional, consultoría, mentoría y soluciones con tecnología Oracle y Oracle APEX a empresas, equipos de desarrollo de consultoras y a particulares. En 2024 ha sido reconocido como Oracle ACE Associate por la Corporación Oracle por sus contribuciones a la Comunidad de Usuarios de Tecnologías de Oracle
Comentarios
Publicar un comentario