Está en la página 1de 3

UNIVERSIDAD PROVINCIAL DEL SUDOESTE

Formación Profesional – Programador


Programación Orientada a Objetos

Trabajo Examen Final

En una pequeña biblioteca se desea mantener un registro de sus libros, los


cuales tiene agrupados por género literario, que son: narrativo, lírico, dramático y
didáctico.

La biblioteca pretende resguardar para cada libro mínimamente su título, autor,


editorial, número de registro ISBN y año de publicación.

Todos los datos deberán resguardarse en archivos XML, habrá un archivo por
cada género literario, el nombre del archivo será el género, y dentro figurarán todos
los libros pertenecientes a ese género. Por ejemplo, el archivo XML para el género
literario narrativo se denominará narrativo.xml y el contenido podría ser el
siguiente:

1/3
UNIVERSIDAD PROVINCIAL DEL SUDOESTE
Formación Profesional – Programador
Programación Orientada a Objetos

Se deberá proveer de la funcionalidad necesaria para guardar información en


dicho archivo (agregar/quitar/consultar un libro).

Se deberá diseñar una página web que permita el registro de nuevos libros,
pidiendo el género literario y todos los datos del libro. El género deberá elegirse desde
una lista desplegable u opciones del tipo excluyente (radio), el resto de los datos
pueden ser campos libres.

Al momento de enviarse el formulario de solicitud de alta de un nuevo libro se


deberán verificar que todos los datos estén completos y sean válidos. Además, se
deberá controlar que no se cargue el mismo libro más de una vez. El usuario debe
obtener un mensaje acorde si ocurre algún error.

Es necesario proveer por lo menos un listado con los libros pertenecientes a un


género literario en particular,

Se deberá realizar el trabajo siguiendo los lineamientos del paradigma de la


programación orientada a objetos. Por ejemplo, una clase se encargará de las
funcionalidades de registro de los libros, como su alta, baja, consulta de libros de
determinado género, etc,, otra de los libros en sí, otra clase deberá encargarse de la
recuperación de datos en archivos XML, por ejemplo, si se pide el número de ISBN,
deberá retornar el valor que se encuentra entre las etiquetas <ISBN></ISBN>, etc.

Es importante respetar el encapsulamiento, por ejemplo, se pueden consultar


los datos de un libro sin saber cómo se guardan esos datos (archivo XML, archivo
JSON, base de datos, etc), y también las buenas prácticas de programación como
documentación del código, identación, nombres acordes de variables, funciones,
clases, etc. Es importante declarar bien la visibilidad de los atributos y métodos
(publico, protegido, privado).

La página principal deberá presentar las opciones de las acciones que se


podrían realizar:

 Registrar un nuevo libro


 Eliminar un libro
 Listar los libros de un determinado género

2/3
UNIVERSIDAD PROVINCIAL DEL SUDOESTE
Formación Profesional – Programador
Programación Orientada a Objetos

 Buscar un libro por alguno de sus datos, como su título, ISBN etc, y
devolver todos los datos del mismo, incluyendo el género literario
 Permiti9r consultar los libros pertenecientes a determinada editorial o
autor.

Se deberá presentar el diseño UML que muestre la relación entre clases,


respetando las relaciones de herencia, agregación, composición, etc.

Utilice librerías CSS para aplicar estilos (Boostrap, Bulma, Materialize, etc)

TIPS:

1. Para agregar un nuevo libro, se agrega dicha información al final del


archivo XML correspondiente
2. Si el archivo del género literario elegido no existe, debe crearse al
momento de dar der alta el primer libro en ese género
3. Para borrar un libro de un género, se recuperan los datos del archivo, y
se vuelven a agregar todos, menos el libro que se desea eliminar.
4. Tenga presente que la clase que maneja el contenido de los archivos
XML debe manejarse por las etiquetas, la que abre y la que cierra.
5. No olvide la etiqueta de la primera línea que contiene la versión y la
codificación.
6. Recuerde que no todo son clases, es decir, las páginas que permiten la
interacción con el usuario (la persona que registra los libros) no son
clases, aunque pueden hacer uso de éstas.

3/3

También podría gustarte