Proyecto en Java: Tienda de productos electrónicos

15
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 Córdoba. http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org [email protected] IES Gran Capitán Módulo: Programación Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web” Proyecto en Java: Tienda de Productos Electrónicos

Transcript of Proyecto en Java: Tienda de productos electrónicos

Page 1: Proyecto en Java: Tienda de productos electrónicos

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.

http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org [email protected]

IES Gran Capitán

Módulo: Programación

Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web”

Proyecto en Java:

Tienda de Productos

Electrónicos

Page 2: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 2

Autor: Miguel Ángel López Moyano

1. Introducción

Vamos a desarrollar un programa para gestionar una tienda de productos electrónicos.

Nos limitaremos a las opciones:

Añadir producto

Eliminar producto

Modificar producto

Mostrar componentes

Mostrar móviles

Mostrar tablets

Mostrar todos los productos

Buscar por id

Buscar por nombre

Guardar y leer en/desde fichero

Realizar venta

Menú ayuda (ayuda y acerca de…)

Se seguirá la siguiente estructura de clases y herencia:

Page 3: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 3

Autor: Miguel Ángel López Moyano

El código fuente de este proyecto puede consultarse y descargarse desde la siguiente

dirección: https://github.com/i02lomom/ProyectoProgramacion

2. Menú Archivo

En el menú Archivo tendremos las opciones típicas para trabajar con ficheros (nuevo,

abrir, guardar y guardar como) además de la opción Salir.

Page 4: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 4

Autor: Miguel Ángel López Moyano

a) Nuevo

Se creará un nuevo ArrayList de productos comprobando si el actual está modificado,

en ese caso se le preguntará al usuario si desea guardar los cambios.

b) Abrir

Abre un fichero que cargará el ArrayList de productos que tiene guardado. Si el actual

ArrayList está modificado se preguntará al usuario si desea guardar los cambios.

Page 5: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 5

Autor: Miguel Ángel López Moyano

c) Guardar

Guarda el actual ArrayList en el fichero que esté asignado. Si el fichero no se ha

guardado anteriormente (sin título) se llamará a Guardar como y se le pedirá al usuario

que le dé un nombre al fichero donde desea guardar los datos.

d) Guardar como

Guarda el actual ArrayList en el fichero que le indique el usuario. En este caso siempre

se pide el nombre del fichero.

e) Salir

Sale del programa comprobando si el actual ArrayList está modificado, en ese caso

pregunta al usuario si desea guardar los cambios.

3. Menú Productos.

En este menú tendremos las opciones Añadir producto, Eliminar producto, Modificar

producto, Añadir unidades y Buscar (por id y por nombre).

Page 6: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 6

Autor: Miguel Ángel López Moyano

a) Añadir producto

Añade un producto al actual ArrayList. El producto debe de ser de tipo componente,

móvil o tablet (no se pueden crear instancias de producto ya que es una clase abstracta).

Se pedirá primero el id (que se controlará mediante expresiones regulares). Si no

cumple con los requisitos saltará una excepción.

Page 7: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 7

Autor: Miguel Ángel López Moyano

A continuación se piden el nombre, la descripción, etc. El atributo fechaRecepcion será

de tipo fecha y se asignará automáticamente, ya que la fecha de entrada del producto

será la fecha actual.

Cada una de las tres clases posee al menos una enumeración como atributo, cumpliendo

así con los requisitos del proyecto.

b) Eliminar producto

Se busca el producto a través de su nombre y se elimina del ArrayList.

c) Modificar producto

Se busca el producto a través de su nombre y se podrán modificar algunos de sus

atributos.

Page 8: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 8

Autor: Miguel Ángel López Moyano

d) Buscar por id

Se busca el producto en el ArrayList a través de la id y se muestra por pantalla.

e) Buscar por nombre

Se busca el producto en el ArrayList a través del nombre y se muestra por pantalla.

Page 9: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 9

Autor: Miguel Ángel López Moyano

4. Menú ventas

Aquí solo contaremos con la opción realizar venta.

a) Realizar venta

Aquí podremos realizar la venta de un producto, pudiendo vender varias unidades del

producto siempre que haya existencias en nuestro ArrayList. A la hora del calcular el

precio se realizará un descuento en función del producto que se vende. Por ejemplo en

el caso de un móvil mayor será el descuento cuanto menor sea la calidad de su cámara,

o si fuese una tablet mayor será el descuento cuanto menor tamaño tenga su pantalla. En

el caso de los componentes existe un porcentaje de descuento que se aplica en función

del tipo de componente (3% en cajas, 4% en procesadores, etc…).

Page 10: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 10

Autor: Miguel Ángel López Moyano

5. Menú mostrar

Podremos realizar las siguientes acciones: mostrar componentes, mostrar móviles,

mostrar tablets y mostrar todos los productos.

a) Mostrar componentes

Se muestran los elementos del ArrayList que pertenezcan a la clase Componente.

Page 11: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 11

Autor: Miguel Ángel López Moyano

b) Mostrar móviles

Se muestran los elementos del ArrayList que pertenezcan a la clase Móvil.

Page 12: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 12

Autor: Miguel Ángel López Moyano

c) Mostrar tablets

Se muestran los elementos del ArrayList que pertenezcan a la clase Tablet.

d) Mostrar productos

Se muestran todos los productos del ArrayList.

Page 13: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 13

Autor: Miguel Ángel López Moyano

6. Menú ayuda

Podremos realizar las acciones ver ayuda y acerca de…

Page 14: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 14

Autor: Miguel Ángel López Moyano

a) Ver ayuda

Nos abrirá una ventana que nos permitirá aprender el funcionamiento del programa:

b) Acerca de…

Nos abre una ventana con información acerca del programa.

Page 15: Proyecto en Java: Tienda de productos electrónicos

Proyecto en Java: Tienda de Productos Electrónicos 15

Autor: Miguel Ángel López Moyano