Skip to content

Resolución del primer examen parcial de la materia "Orientación a Objetos I" utilizando Java como lenguaje. La resolucion del mismo tiene como objetivo la creación de un ABM perteneciente a un restaurante mediante algunos conceptos fundamentales de la POO: Clases, atributos, metodos, encapsulamiento, validaciones y manejo de errores.

Notifications You must be signed in to change notification settings

juanNoli-03/ExamenParcial1-OrientacionAObjetos-I

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

    Resolución del primer examen parcial - Orientación a Objetos 1 - Año 2023

    "Sistema Restaurante"


1- Diagrama de Clases:

image

2- Consigna:


Nota: El examen acredita puntos por la resolución del modelo y test de cada CU.

Casos de Uso:

1. + traerCliente(long dni): Cliente

2. + agregarCliente(String cliente, String apellido, long dni, String telefono): boolean

3. + traerMesa(int numeroMesa): Mesa

4. + agregarMesa(int numeroMesa, int capacidad): boolean

Lanzar excepción si ya existe una mesa con el mismo número. El id se calcula de forma autoincremental, teniendo en cuenta que la lista puede tener altas y bajas de objetos.

5. - validarComensales(int cantComensales): boolean

Lanzar excepción si la cantidad de comensales de la reserva es superior a la capacidad de la mesa.

6. + traerReserva(int numeroMesa, LocalDate fechaReserva): Reserva

7. + agregarReserva(Cliente cliente, LocalDate fechaReserva, Mesa mesa, int cantComensales): boolean

Lanzar excepción si la mesa seleccionada ya está reservada para esa fecha. El id se calcula de forma autoincremental, teniendo en cuenta que la lista puede tener altas y bajas de objetos.

8. + traerReservasPorFecha(LocalDate fechaDesde, LocalDate fechaHasta): List

El método retorna una lista de todas las reservas que se encuentren entre la fechaDesde y la fechaHasta (incluyendo extremos).

9. + traerMesasLibreasPorFecha(LocalDate fecha): List

El método retorna una lista de todas las mesas que no tengan una reserva para el dia indicado.

3- Test:


Nota: Al comenzar cada test indicar el numero de CU a resolver ej: System.out.println("1)"); y luego la implementación del mismo.

1- Agregar los siguientes clientes:

Cliente [nombre= "Juan", apellido= "Perez", dni= 38958345, telefono= "+541146592131"]

Cliente [nombre= "Mario", apellido= "Lopez", dni= 32964234, telefono= "+541163927564"]

Cliente [nombre= "Delia", apellido= "Gonzalez", dni= 33095256, telefono= "+541109624724"]

2- Agregar las siguientes Mesas:

Mesa [numeroMesa= 1, capacidad= 4]

Mesa [numeroMesa= 2, capacidad= 4]

Mesa [numeroMesa= 3, capacidad= 2]

Mesa [numeroMesa= 4, capacidad= 4]

Mesa [numeroMesa= 5, capacidad= 6]

Mesa [numeroMesa= 6, capacidad= 4]

3- Agregar las siguientes Reservas:

Reserva [cliente= Cliente [nombre= "Juan", apellido= "Perez", dni= 38958345, telefono= "+541146592131"], fechaReserva= 2023-8-10, mesa= Mesa [numeroMesa= 3, capacidad= 2], cantComensales= 2]

Reserva [cliente= Cliente [nombre= "Mario", apellido= "Lopez", dni= 32964234, telefono= "+541163927564"], fechaReserva= 2023-8-10, mesa= Mesa [numeroMesa= 2, capacidad= 4], cantComensales= 4]

Reserva [cliente= Cliente [nombre= "Delia", apellido= "Gonzalez", dni= 33095256, telefono= "+541109624724"], fechaReserva= 2023-8-20, mesa= Mesa [numeroMesa= 6, capacidad= 4], cantComensales= 4]

4- Traer e imprimir todas las reservas entre las fechas 2023-8-10 y 2023-8-15

5- Traer e imprimir todas las mesas libres para la fecha 2023-8-10

6- Intentar agregar nuevamente al siguiente Cliente:

Cliente [nombre= "Mario", apellido= "Lopez", dni= 32964234, telefono= "+541163927564"]

7- Intentar agregar nuevamente la siguiente Mesa:

Mesa [numeroMesa= 2, capacidad= 4]

8- Intentar agregar la siguiente Reserva:

Reserva [cliente= Cliente [nombre= "Delia", apellido= "Gonzalez", dni= 33095256, telefono= "+541109624724"], fechaReserva= 2023-8-10, mesa= Mesa [numeroMesa= 3, capacidad= 2], cantComensales= 2]

9- Intentar agregar la siguiente Reserva:

Reserva [cliente= Cliente [nombre= "Mario", apellido= "Lopez", dni= 32964234, telefono= "+541163927564"], fechaReserva= 2023-8-15, mesa= Mesa [numeroMesa= 4, capacidad= 4], cantComensales= 6]

About

Resolución del primer examen parcial de la materia "Orientación a Objetos I" utilizando Java como lenguaje. La resolucion del mismo tiene como objetivo la creación de un ABM perteneciente a un restaurante mediante algunos conceptos fundamentales de la POO: Clases, atributos, metodos, encapsulamiento, validaciones y manejo de errores.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages