ORDA, siglas de Object Relational Data Access (acceso adatos relacionales aobjetos ), es un método de acceso a datos que combina las ventajas de la programación orientada a objetos con las de las bases de datos relacionales, lo que permite a los desarrolladores centrarse en resolver problemas de negocio en lugar de gestionar el acceso a los datos.
Tanto si es nuevo en ORDA como si ya está familiarizado con él y desea ampliar sus conocimientos, considere esta entrada de blog como una hoja de ruta que le guiará en el proceso de aprendizaje.
Esta entrada de blog incluye lo siguiente
- Beneficios de ORDA
- Visión general de ORDA
- Concepto principal
- API de ORDA
- Capa de abstracción ORDA
- Trabajo a distancia
- Optimización de peticiones
- Sistema de permisos
- Compartir datos entre procesos
Sin más dilación, ¡vamos al grano!
¿Por qué debería interesarme ORDA?
Antes de ir a través de los detalles técnicos, vamos a enumerar algunos de los beneficios de ORDA:
Todo es un Objeto
ORDA es un mundo donde todo es un objeto, incluyendo la base de datos.
Este enfoque permite acceder atoda la base de datos 4D utilizando un enfoque orientado a objetos, lo que facilita el trabajo con los datos y puede ayudar a reducir la complejidad del código. ORDA mapea los datos a conceptos del mundo real de manera que el uso de los datos se vuelve simple y elimina la necesidad de una comprensión profunda de la estructura relacional.
Código orientado al negocio con clases
ORDA viene con clases dedicadas al modelo de datos. Gracias a las clases, se puede ocultar la complejidad de la implementación física de los datos, y la aplicación puede exponer servicios fácilmente, ser más manejable, más fácil de mantener e integrarse a la perfección con otras aplicaciones.
Rendimiento inmediato
ORDA puede ayudar a mejorar el rendimiento de las aplicaciones proporcionando varias técnicas de optimización, como contextos y lazy loading. Estas técnicas pueden ayudar a reducir el número de consultas a la base de datos que necesitan ser ejecutadas, lo que lleva a tiempos de respuesta de la aplicación más rápidos. ¿Y lo mejor? Todo es automático; a diferencia de SQL o una herramienta ORM, no es necesario programar.
Mayor escalabilidad
ORDA puede ayudar a que las aplicaciones sean más escalables al soportar arquitecturas de bases de datos distribuidas. Esto significa que los datos pueden ser distribuidos a través de múltiples servidores de bases de datos, lo que puede ayudar a mejorar el rendimiento y manejar cantidades más significativas de datos.
Abierto y extensible
ORDA permite la creación de una integración perfecta entre diferentes sistemas. Se puede combinar con el servidor REST para exponer la lógica de negocio con una API controlada (a través de sus clases) para otras herramientas, como frameworks web como Angular o React.
Después de conocer algunos de los beneficios de ORDA y cómo esta tecnología puede afectar positivamente a tu aplicación, vamos a sumergirnos en los detalles técnicos.
Visión global de ORDA
Este esquema muestra una visión global de todo el uso de ORDA:
- ORDA proporciona APIs para trabajar con sus datos y una robusta capa de abstracción que será expuesta como APIs de negocio.
- Un completo sistema de permisos está disponible para filtrar el acceso a tus datos.
- Con ORDA, puede trabajar con el servidor REST utilizando almacenes de datos remotos o las API REST.
- Puedes utilizar ORDA si trabajas en modo Cliente-Servidor.
- El código ORDA también se puede utilizar en una aplicación web (4DACTION, 4D tags).
Este diagrama debería darle una visión general de cómo ORDA se conecta a las diferentes partes de 4D. Una vez que la idea está clara, siga los siguientes pasos para comenzar su viaje de aprendizaje.
¡Que comience el viaje de aprendizaje!
Paso 1 – Conceptos principales
Los conceptos principales de ORDA pueden ser descubiertos aquí.
Primero, familiarízate con los términos datastore, dataclass, entity y entity selections. Entienda el significado de esos conceptos, ya que los verá a menudo cuando trabaje con ORDA.
Paso 2 – APIs ORDA
En segundo lugar, mira las APIs orientadas a objetos de ORDA y descubre cómo puedes manejar tus datos con esas APIs.
Por ejemplo, la API más utilizada es query() para ejecutar una consulta en tu base de datos.
Para ayudarte a descubrir cada API, aquí tienes una lista de entradas de blog con aplicaciones de demostración con las que puedes jugar.
- Consulta tu base de datos con un enfoque orientado a objetos
- Ir y venir entre selecciones actuales a ORDA
- Acciones CRUD
- Operaciones lógicas
- Manejar entidades
- Trabajar con objetos y colecciones
- Calcular estadísticas
- Ordenar por fórmula
- Consultas con fórmulas
- Marcadores de posición con nombre para rutas de atributos
- Marcadores de posición con nombre
- Selección de entidades: métodos extract() y refresh()
- Métodos miembros para obtener información de estructura
- Comparación de dos selecciones de entidades
- Mecanismos de bloqueo optimistas
- Bloqueo de entidades
- Escribir código genérico
- Ejemplo de código genérico
- Hoja de trucos ORDA
descubra el poder de las relaciones con orda
Como hemos dicho antes, ORDA es un método de acceso a datos que combina la programación orientada a objetos con las ventajas de las bases de datos relacionales.
Si quieres ir más allá y descubrir todas las ventajas que puedes sacar de las relaciones usando ORDA, aquí tienes una serie de demos donde aprenderás a ahorrar muchas líneas de código y a construir una interfaz fácil de usar.
Enlázalo con el código clásico de 4D
Si todavía utilizas el código clásico de 4D (que todos conocemos y amamos), puedes mezclarlo con el código ORDA si es necesario.
Esto es útil para introducir conceptos ORDA progresivamente en tu aplicación.
Revisa esta entrada de blog para más detalles.
Paso 3 – Capa de abstracción ORDA.
Para ir más allá con ORDA, aprovecha la capa de abstracción.
En esta capa, implementarás toda tu lógica de negocio a través de las clases del Modelo de Datos ORDA.
El manejo de clases va un paso más allá en la programación orientada a objetos. Cada clase puede tomar lógica de negocio en funciones.
Descubra el beneficio de atributos computados y alias. Es fácil configurar un atributo computado definiendo su fórmula de cálculo y toda su lógica de negocio. O definir un alias como cualquier otro atributo en su modelo de datos.
Por lo tanto, los desarrolladores consumirán esta capa de abstracción en lugar de manejar la capa de implementación física.
paso 4 – Trabajando remotamente
Ahora es el momento para la parte divertida 🙂
cliente-servidor
Puedes usar ORDA en modo cliente-servidor. Usa el comando ds para obtener el objeto datastore y comenzar a trabajar con tus datos.
Aquí hay más detalles sobre características específicas para trabajar en C/S.
almacén de datos remoto
Si trabaja en Client Server, está limitado a la base de datos actual, lo que requiere una conexión de red permanente.
Gracias al datastore remoto, una aplicación puede obtener datos de otra base de datos 4D remota expuesta en un servidor 4D.
Esta funcionalidad cubre muchos casos de uso:
- organizar sus aplicaciones para que trabajen sin conexión y sólo sincronicen los datos locales cuando los datos remotos sean accesibles
- publicar sus datos en múltiples servidores y cambiar de uno a otro cuando sea necesario
- Divida su modelo de datos en diferentes bases de datos( por ejemplo, datos locales, datos internacionales). Entonces puede tener sus datos distribuidos en diferentes lugares y aún accesibles a través de un único código cliente 4D (métodos de proyecto y objetos de formulario)
Lea estas entradas de blog para saber más:
APIs REST
Las API de servidor REST se basan en conceptos ORDA.
Aquí hay algunas valiosas entradas de blog para aprender a utilizar las APIs REST.
paso 5 – optimización de peticiones
Cuando se trabaja de forma remota con ORDA, tenga en cuenta que las solicitudes se optimizan automáticamente para pedir al servidor sólo los atributos necesarios. Además, también puede personalizar sus propias reglas de optimización para mejorar el rendimiento.
Para aprender más paso a paso, aquí hay una lista de entradas de blog.
- Utilice ORDA para mejorar el rendimiento
- Control total sobre las peticiones REST
- Optimización de peticiones y una demo
- Registro de peticiones
Y aquí hay un video demo en vivo que se hizo durante la Cumbre 2020
paso 6 – Sistema de permisos para filtrar el acceso a los datos
Filtrar el acceso a los datos es una característica imprescindible para evitar accesos maliciosos a su aplicación.
Desde la v19R8, usted se beneficia de un sistema potente y totalmente personalizable para proteger sus datos de usuarios no autorizados. Se trata de un sistema para proteger sus datos en función de quién accede a ellos y a qué datos se accede.
Cubre todos los procesos web, como peticiones REST, peticiones recibidas en un datastore remoto, y procesos web como 4DACTION o 4D tags.
Lea esta entrada del blog para obtener más información.
Para concluir
Recuerda, ORDA es una poderosa herramienta que puede hacer tu proceso de desarrollo y acceso a datos más rápido y eficiente.
Esperamos que esta entrada de blog te haya ayudado. No dudes en hacer preguntas en el foro.
¡Estaremos encantados de ayudarte con ORDA!