From 11d9f03389e550065341d2dd698fc5392cb3a9d8 Mon Sep 17 00:00:00 2001 From: michaelpaliz Date: Thu, 24 Nov 2022 12:01:52 +0100 Subject: [PATCH] adding changes --- .idea/vcs.xml | 6 ++++ README.md | 31 +++++++++++++++++-- .../{InterfazDatos.java => CargaDatos.java} | 3 +- .../ImplementaIntefazServicioGeneral.java | 7 ++--- 4 files changed, 38 insertions(+), 9 deletions(-) create mode 100644 .idea/vcs.xml rename src/main/java/com/primerEjemplo/Modelo/Interfaz/{InterfazDatos.java => CargaDatos.java} (93%) diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/README.md b/README.md index aef8a64..3151cbe 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,37 @@ -

ANOTACIONES

+

PROYECTO SPRING CORE

+

MINI-TIENDA DE LIBROS

+

En esta mini tienda de libros he implementado 7 basicas funciones para la tienda, no lo he echo por comandos por motivos de tiempo y simplicidad de la aplicacion.

+

Procedimiento

+

* Los datos los he buscado por internet, es un fichero json (libros.json) lo he parseado empeze a controlar algunos campos para evitar muchas exepciones inecesarias porque algunos objetos del json no existian para todos los libros.

+

* Creo 2 interfaces donde basicamente creo los metodos generales, despues en la otra interfaz introduzco los mas especificos para cada libro.

+

* Existen 2 clases mas que implementan las interfaces, que es donde implementaremos la primera capa de abstraccion en nuestras funciones.

+

* Por ultimo la clase servicio que es donde realizaremos la parte mas grande de la logica que es la busquecada mas la comparacion segun lo que necesitemos hacer por cada metodo.

+

Creo una clase Tienda donde creo el menu e introduzco varias funciones para el usuario.

+ + + + +

OBSERVACIONES

+

El proyecto necesita algunas mejoras, como por ejemplo la simplicidad del codigo y sobretodo la restrocturacion ya que me gustaria indigar mas en las clases y limpiar mas el codigo.

+

La clase Predicate ha sido muy util la verdad es que no sabia que era hasta que empece a utilizarlo.

+

Lamdbas es muy importante tanto como el predicate en este ejercicio te ayuda a simplificar mucho el codigo en varias lineas.

+ + +

Anotaciones

Autowired

Tiene el mismo efecto que la configuracion via XML

Busca un bean y lo inyecta en la depencia

Se realiza un autocableado byType

-

*****Donde lo podemos usar******

+

*Donde lo podemos usar*

Lo podemos utilizar en un metodo setter

```java diff --git a/src/main/java/com/primerEjemplo/Modelo/Interfaz/InterfazDatos.java b/src/main/java/com/primerEjemplo/Modelo/Interfaz/CargaDatos.java similarity index 93% rename from src/main/java/com/primerEjemplo/Modelo/Interfaz/InterfazDatos.java rename to src/main/java/com/primerEjemplo/Modelo/Interfaz/CargaDatos.java index 8e77105..1688005 100644 --- a/src/main/java/com/primerEjemplo/Modelo/Interfaz/InterfazDatos.java +++ b/src/main/java/com/primerEjemplo/Modelo/Interfaz/CargaDatos.java @@ -5,10 +5,9 @@ import com.primerEjemplo.Modelo.ParserLibros; import java.io.File; import java.io.FileNotFoundException; -import java.util.ArrayList; import java.util.List; -public class InterfazDatos { +public class CargaDatos { public static List getDatos() throws FileNotFoundException { List libros; diff --git a/src/main/java/com/primerEjemplo/Modelo/Servicio/ImplementaIntefazServicioGeneral.java b/src/main/java/com/primerEjemplo/Modelo/Servicio/ImplementaIntefazServicioGeneral.java index 9b75f7a..2b6936e 100644 --- a/src/main/java/com/primerEjemplo/Modelo/Servicio/ImplementaIntefazServicioGeneral.java +++ b/src/main/java/com/primerEjemplo/Modelo/Servicio/ImplementaIntefazServicioGeneral.java @@ -1,13 +1,10 @@ package com.primerEjemplo.Modelo.Servicio; import com.primerEjemplo.Modelo.Interfaz.IServicioLibro; -import com.primerEjemplo.Modelo.Interfaz.InterfazDatos; +import com.primerEjemplo.Modelo.Interfaz.CargaDatos; import com.primerEjemplo.Modelo.Libro; -import com.primerEjemplo.Modelo.ParserLibros; -import java.io.File; import java.io.FileNotFoundException; -import java.util.ArrayList; import java.util.Collection; import java.util.List; @@ -17,7 +14,7 @@ public class ImplementaIntefazServicioGeneral implements IServicioLibro { private Libro libro; public ImplementaIntefazServicioGeneral() throws FileNotFoundException { - libros = InterfazDatos.getDatos(); + libros = CargaDatos.getDatos(); } @Override