Introducción
Esta práctica consiste en desarrollar una interfaz gráfica
de usuario (GUI) que proporcione una funcionalidad
equivalente a la que se solicitaba en la aplicación web de
gestión de fotografías personales de usuarios en la
práctica FotoWeb.
Arquitectura de la aplicación
La arquitectura de la aplicación estará compuesta por dos
sistemas:
- Gestor de fotografías (FotoGUI): proporciona una
interfaz gráfica desarrollada con componentes Swing que le
permite al usuario interaccionar con la aplicación. Utiliza
una base de datos para almacenar la información relacionada
con las fotografías del usuario.
- Base de datos: almacena la información
relacionada con las fotografías en dos tablas: una de
carpetas y otra de fotografías.
Descripción de la aplicación
El usuario dispondrá de un conjunto de carpetas. Si lo
desea, puede tanto crear nuevas carpetas como borrar
carpetas ya existentes. Una carpeta sólo puede contener
fotografías. En ningún caso se puede anidar una carpeta
dentro de otra.
La principal diferencia respecto a FotoWeb, es que la
aplicación desarrollada será para uso de un único usuario,
por lo que se elimina toda la funcionalidad relacionada con
la gestión de usuarios. Además, no existirá un repositorio
centralizado de los ficheros que contienen las fotografías,
por lo que no es necesario mover estos ficheros a un
determinado directorio gestionado por la aplicación.
Toda la información relativa a carpetas y fotografías reside
en la base de datos, de forma análoga a como se hacía en la
práctica FotoWeb.
Carpetas
Las fotografías se organizan mediante carpetas. La
aplicación debe permitir sólo un nivel de carpetas. Cada
carpeta debe contener como mínimo la siguiente información,
aunque puede tener información adicional que se crea
conveniente:
- Nombre: nombre de la carpeta.
- Descripción: descripción de la carpeta.
Fotografías
La aplicación debe almacenar, como mínimo, la siguiente
información para cada fotografía, aunque puede tener más si
se cree conveniente:
- Nombre: nombre de la fotografía.
- Descripción: descripción de la fotografía.
- Carpeta: carpeta a la cual pertenece.
- Ruta: nombre del fichero, en el sistema de
archivos local, en el cual se almacena.
Requisitos
Se valorará la elegancia y facilidad de uso de la GUI
desarrollada. Además:
- Los componentes gráficos utilizados deben ser
Swing.
- Debe existir una aplicación única desde la que se acceda
a toda la funcionalidad requerida. Para ello, se podrán
utilizar menús, barras de herramientas, pestañas (tabbed
panes),...
- Debe mostrarse al usuario los errores cometidos.
- Se valorará la captura de eventos específicos de cada
componente empleado.
- Es recomendable reutilizar las clases desarrolladas en la
práctica FotoWeb para el acceso a la información almacenada
en la base de datos. Para mantener la misma estructura de
datos, considerad que existe un usuario por defecto al que
pertenecen todas las carpetas y fotografías creadas.
|