12.07.2015 Views

Programación en Java

Programación en Java

Programación en Java

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Programación <strong>en</strong> <strong>Java</strong> Ejercicio de repasoEl objetivo de este ejercicio es diseñar e implem<strong>en</strong>tar un pequeño programa que permita gestionar una biblioteca. El programa almac<strong>en</strong>ará datos de libros y autores y permitirá introducir datos y realizar búsquedas. Además deberá ofrecer una interfaz amigable al usuario (basada <strong>en</strong> interacción por la <strong>en</strong>trada/salida estándar) y cumplir los sigui<strong>en</strong>tes requisitos: • Para cada libro se almac<strong>en</strong>ará al m<strong>en</strong>os la sigui<strong>en</strong>te información: o Título. o Autor (ver mas abajo). o Género. o Editorial. o Breve sinopsis. • Para cada autor se almac<strong>en</strong>ará al m<strong>en</strong>os la sigui<strong>en</strong>te información: o Nombre. o Año de nacimi<strong>en</strong>to. o Breve biografía. • El programa debe ser capaz de manejar al m<strong>en</strong>os 5000 libros y 1000 autores distintos. • Interacción con el usuario: El programa se arrancará sin parámetros. A hacerlo, aparecerá el m<strong>en</strong>ú de bi<strong>en</strong>v<strong>en</strong>ida. El resto de m<strong>en</strong>ús que podrán ir apareci<strong>en</strong>do se detallan a continuación: o M<strong>en</strong>ú de bi<strong>en</strong>v<strong>en</strong>ida: Es el m<strong>en</strong>ú principal. Ofrece tres opciones: § Dar de alta un libro (dirige al m<strong>en</strong>ú de alta de libros). § Dar de alta un autor (dirige al m<strong>en</strong>ú de alta de autores). § Búsquedas (dirige al m<strong>en</strong>ú de búsquedas). o M<strong>en</strong>ú de alta de libros: Se usa para almac<strong>en</strong>ar un nuevo libro <strong>en</strong> el sistema. Pregunta por los difer<strong>en</strong>tes parámetros del libro y lo almac<strong>en</strong>a. Si el autor proporcionado no se ha introducido previam<strong>en</strong>te pres<strong>en</strong>ta un m<strong>en</strong>saje de error y no almac<strong>en</strong>a el libro. o M<strong>en</strong>ú de alta de autores: Similar al de alta de libros. Pregunta por los difer<strong>en</strong>tes parámetros del autor y los almac<strong>en</strong>a. o M<strong>en</strong>ú de búsqueda: Ofrece las sigui<strong>en</strong>tes opciones de búsqueda: § Búsqueda por título: Solicita el título de un libro y, si lo <strong>en</strong>cu<strong>en</strong>tra, imprime sus datos. § Búsqueda por autor: Solicita el nombre de un autor y, si lo §<strong>en</strong>cu<strong>en</strong>tra, imprime los datos de todos sus libros. Búsqueda por género: Solicita el nombre de un género y imprime los datos de todos los libros de dicho género. o Al terminar cada acción (alta o búsqueda) se debe retornar al m<strong>en</strong>ú principal.


Realizar: • Id<strong>en</strong>tificación y especificación de casos de uso: o Diagrama de casos de uso o Descripción de actores o Descripción de cada caso de uso • Diseño: o Id<strong>en</strong>tificación de clases o Descripción de clases: § Atributos § Métodos o Diagrama de clases o Descripción de las operaciones de manera informal (texto) • Implem<strong>en</strong>tación <strong>en</strong> <strong>Java</strong> (proyecto NetBeans).


Ext<strong>en</strong>sión opcional Ampliar el programa para que permita la gestión de préstamos de libros a socios: • Ext<strong>en</strong>der la información que el sistema almac<strong>en</strong>a de los libros con los sigui<strong>en</strong>tes datos: o Número total de ejemplares: La cantidad de copias del libro que posee la biblioteca o Número de ejemplares disponibles: La cantidad de copias disponibles <strong>en</strong> este mom<strong>en</strong>to (que no han sido prestadas) • Proporcionar un mecanismo para que el sistema almac<strong>en</strong>e información de socios. Para cada socio se debe almac<strong>en</strong>ar la sigui<strong>en</strong>te información: o Nombre completo o Número de socio • El sistema debe ser capaz de manejar al m<strong>en</strong>os 500 socios. • Posibilitar el préstamo de libros: El sistema debe ofrecer la opción de registrar el préstamo de un libro. Para ello deberá solicitar los sigui<strong>en</strong>tes datos: o Libro que se presta o Socio que lo recibe o Fecha de préstamo o Fecha tope de devolución • El sistema debe ser capaz de registrar que el libro se ha prestado y actualizar la cantidad de ejemplares disponibles. En caso de que no haya ejemplares disponibles el sistema deberá indicarlo y el préstamo no se realizará. • En caso de que el préstamos se realice, el sistema deberá almac<strong>en</strong>arlo. • El sistema debe ser capaz de registrar devoluciones: Un socio podrá devolver un libro y el sistema deberá procesarlo adecuadam<strong>en</strong>te. Se deberá proporcionar la fecha de devolución y, si es posterior a la fecha tope del préstamo, deberá indicarse por pantalla. • El sistema deberá ser capaz de g<strong>en</strong>erar informes de préstamos: o Número de libros disponibles para préstamo. o Número de libros prestados. o Libros prestados a un socio. o Dada una fecha, préstamos que han rebasado su fecha tope de devolución.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!