Gestión de bases de datos: relacionales y orientadas a objetos. Persistencia de objetos

Caso práctico

Ocultar


Ada
ha asignado un proyecto a María y a Juan. Se trata de un proyecto importante, puede suponer muchas ventas, y por tanto una gran expansión para la empresa.

En concreto, una cadena de tiendas a nivel nacional se ha puesto en contacto con BK programación para decirles que necesitan un programa que sustituya al actual software que utilizan para los puntos de venta. El nuevo software tendrá unas características especiales,  todavía por determinar. Este es un proyecto que si sale adelante será de largo recorrido, dado que no solo requerirá el desarrollo, sino también el mantenimiento y mejora del mismo a lo largo de los años. Podría ser trabajo asegurado para la empresa durante mucho tiempo.

De momento Ada les ha pedido a María y a Juan que se pongan a estudiar cómo es ese tipo de software y a prepararse para la tarea que está por venir. Ambos saben que una cuestión vital en una aplicación como esta es el almacenamiento de los datos: productos, tiques, movimientos de caja, entrada de productos, etc.

Como en BK programación trabajan sobre todo con Java, desde el primer momento Juan y María tienen claro que van a tener que utilizar Bases de Datos. Su idea ahora es explorar y experimentar, y para ello tienen pensado crear una aplicación sencilla de punto de venta que van a denominar "mini pos".

Ocultar

Ilusrración de un bauíl marrón, con la tapa medio abierta.
OpenClipart-Vectors (Licencia Pixabay)

¿Te imaginas una aplicación donde no se pudieran guardar los datos?

Casi todos los programas hoy día tienen la opción de guardar los datos con los que se trabaja.

Hasta ahora, ya conoces cómo abrir un archivo y utilizarlo como “almacén” para los datos que maneja tu aplicación. Utilizar un archivo para almacenar datos es la forma más sencilla de persistencia, porque en definitiva, la persistencia es hacer que los datos perduren en el tiempo.

Hay muchas formas de hacer los datos de una aplicación persistentes, y muchos niveles de persistencia. Cuando los datos de la aplicación solo están disponibles mientras la aplicación se está ejecutando, tenemos un nivel de persistencia muy bajo.

Es deseable que los datos de nuestra aplicación tengan el mayor nivel de persistencia posible.

Tendremos un mayor nivel de persistencia si los datos “sobreviven” a varias ejecuciones, o lo que es lo mismo, si nuestros datos se guardan y luego son reutilizables con posterioridad. Tendremos un nivel todavía mayor si “sobreviven” a varias versiones de la aplicación, es decir, si guardo los datos con la versión 1.0 de la aplicación y luego puedo utilizarlos cuando esté disponible la versión 2.0.

Ya hemos visto varias formas de hacer los datos de una aplicación persistentes, mediante ficheros, en una unidad anterior. Ahora, en esta unidad, vamos a ver cómo pueden persistir los datos en una base de datos, explorando dos técnicas diferentes:

  • Almacenando los datos en una base de datos relacional.
  • Usando técnicas más avanzadas de persistencia de objetos.