Ir al contenido principal

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.

👉Lo he hecho, si, me ha gustado, y...requiere mas trabajo ya que algunos miembros del equipo deberán velar por mantener esta separación y los privilegios actualizados, sacrificando algo de productividad por un aumento en los niveles de seguridad, al final, tu decides donde colocar tus recursos.

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

Entradas populares de este blog

Oracle APEX 24.1 ya se encuentra disponible!

Oracle APEX 24.1 ya se encuentra disponible! Descargalo:  https://www.oracle.com/tools/downloads/apex-downloads/ Ashish Mohindroo, Vicepresidente de gestión de productos Plataforma de aplicaciones APEX Low Code ha anunciado hoy Lunes 17 de Junio de 2024 que Oracle APEX 24.1 ya está disponible para su descarga y se está implementando en las regiones de desarrollo de aplicaciones OCI APEX y servicio de nube de base de datos autónoma en todo el mundo. Con esta última versión, aprende a crear tu primera aplicación de bajo código con GenAI. Esta versión se basa en tres pilares principales de innovación que permiten crear aplicaciones atractivas de nivel empresarial con facilidad:  Desarrollo de aplicaciones asistido por IA Aprovechamiento del poder de la plataforma de datos de próxima generación de Oracle y  Potentes componentes de nivel empresarial para crear aplicaciones web y aplicaciones para web móviles sofisticadas. Desarrollo de aplicaciones asistido por IA Con este lanzamiento, se i

APEX 23.1 - Notificaciones Push

Las notificaciones push PWA (Progresive Web App) en Oracle APEX son mensajes instantáneos que pueden ser enviados a los usuarios de una aplicación web progresiva sin que estos tengan que estar activamente utilizando la aplicación en ese momento.  Estas notificaciones se envían directamente a los dispositivos móviles o computadoras de los usuarios, permitiendo que estos se mantengan informados sobre actualizaciones relevantes, novedades o cualquier otra información importante relacionada con la aplicación que deseemos enviarles. Las notificaciones push PWA en Oracle APEX son una herramienta poderosa para aumentar la interacción de los usuarios con la aplicación y mejorar la experiencia del usuario en general.  Algunos usos que se le dan son:  enviar recordatorios, alertas, actualizaciones de contenido, promociones, estos entre otros mensajes que ayudan a mantener a los usuarios comprometidos y conectados con la aplicación. Mediante la configuración adecuada en Oracle APEX, los desarroll

APEX 02-06 - Cosa Número 5 de 10: Los estándares de SQL y PL/SQL

Aunque APEX es una plataforma de desarrollo de bajo código, rara vez nos salimos con la nuestra con proyectos que no involucren al menos algo de código. Muchos, de hecho, involucran MUCHO código y lo más probable es que el tuyo también lo haga. El código SQL y PL/SQL es fundamentalmente uno de los códigos más importantes que escribo para mis clientes y socios. La diferencia entre un SQL y PL/SQL que funciona bien y otro que no funciona puede ser la diferencia entre un sistema exitoso y una gran decepción. Ya sea que te guste tu código en minúsculas o mayúsculas o prefieras los nombres de tus tablas en singular o plural, o tengas preferencias particulares sobre el formato del código, es importante tener estándares que estén documentados e implementados en tu base de código. Mis estándares de codificación SQL y PL/SQL están adaptados de trivadis ( https://trivadis.github.io/plsql-and-sql-coding-guidelines/v4.3/ ) y, sean cuales sean tus estándares, asegúrate de comunicarlos bien a todo t