Author

Computer engineer with 11 years of experience in the development of web applications in J2EE environments. After 8 years in Indra, where he worked on projects for the Ministry of Education, the DGT (Directorate-General of Traffic), the RFEF (Royal Spanish Football Federation), and the SELAE (State Lotteries and Gambling), he saw in Paradigma an opportunity to continue growing. Has wide experience in Spring frameworks, Spring Boot, Spring Webflow, Spring Data, etc., and is currently working on eCommerce projects with ATG 10.2 for El Corte Inglés.

Writer in

TDD, a methodology to govern them all

Recently, the methodology Test-Driven Development has become a way of working and a change of mentality in the IT world, but unfortunately there are always exceptions within this sector, be that due to mentality (“this is worthless”) or because of deadlines that hurry us (“this is a waste of time”).

We will try to explain by introducing what it consists of, what are its basic principles, what it means to implement this methodology and what advantages it brings us.

Ready?

read more…

Javers, ¿qué ha pasado con mis datos?

Javers es una librería nacida en 2015 cuyo objetivo principal es auditar cambios en nuestros datos. Es open-source (bajo licencia Apache) y bastante ligero, lo cual resulta interesante para aplicar a nuestro proyectos. 

Por necesidades de negocio puede ser necesario tener un histórico de los distintos estados por los que ha pasado nuestro objeto o simplemente para tener una auditoría de datos, y Javers nos provee de varios tipos de utilidades que nos ayudarán a realizar estas operaciones y consultarlas de forma intuitiva y sencilla.

read more…

5 herramientas para estar a la última en tecnología

¿Qué herramientas pueden hacerte tu día a día más fácil en el desarrollo de tus proyectos? Sin duda, podemos encontrar un gran abanico en el mercado.

Hoy en el blog recopilamos nuestros posts técnicos que más éxito han tenido en 2019.

read more…

MapStruct, simplificando mapeos

En los últimos tiempos han ido saliendo iniciativas que nos ayudan con nuestras tareas del día a día como desarrolladores.

Una de ellas, y de la que hablaremos en este post, es lo que se conoce como “MapStruct”, que es un procesador de anotaciones, rápido, seguro y fácil de entender.

read more…

[Infografía] TDD, una metodología para gobernarlos a todos

Desde hace unos años han surgido diferentes técnicas para mejorar nuestra productividad, reducir costes de mantenimiento y debugging, dotar de robustez a nuestro software y focalizar nuestros desarrollos. Entre estas técnicas, se encuentra TDD, cuyo paradigma consiste en “escribir la prueba, codificar la implementación asociada a dicha prueba y refactorizar”.

Una buena prueba nos puede clarificar el funcionamiento de una casuística concreta, incluso mejor que la documentación asociada. En esta infografía hacemos un resumen de en qué consiste TDD, en qué principios se basa (SOLID) y cuáles son sus ventajas y desventajas.

read more…

Proyecto Lombok, ¡facilítame la vida!

De un tiempo a esta parte, estamos siendo testigos de varias iniciativas que nos facilitan la vida como desarrolladores y hacen mucho más fácil nuestro día a día.

Una de ellas ha sido bautizada como el “Proyecto Lombok” y, aunque yo lo he empezado a utilizar hace relativamente poco tiempo, sí puedo decir que me está siendo muy útil y a estas alturas ya tengo la suficiente perspectiva como para dar una visión al respecto. ¿Empezamos?

read more…

Parlamento, el código de honor de los javeros

De un tiempo a esta parte, con la experiencia de los últimos proyectos en los que he trabajado, me he dado cuenta de que al inicio de un proyecto (y en fases regulares del mismo) es muy importante establecer unas convenciones de código y de diseño.

Aunque sea algo que en apariencia se presupone, no deberíamos de tomarlo como tal, ya que en muchos casos no se lleva a cabo.

Como bien se decía en la saga “Piratas del Caribe”, es fundamental “parlamentar” para establecer una reglas mínimas con el acuerdo de todos los miembros técnicos del equipo.

¿En qué consiste esta problemática? ¿Qué podemos hacer para darle solución? Veamos algunas pautas que podemos tener en cuenta como una sencilla y breve guía.

read more…

DDD, el Dominio implica “Crecer fuerte”

“Crecer fuerte” es el lema de la casa de Tyrell. Si eres fan de ‘Juego de Tronos’ conocerás a esta familia, una de las que forman el maravilloso entramado de la aclamada serie.

Si extrapolamos esta premisa al mundo IT, podríamos decir que, a partir de ese lema, se dan las pautas de lo que implica un proyecto desarrollado a partir del paradigma DDD (Domain-Driven Design), o lo que es lo mismo: diseño orientado al dominio.

En este post hablaré de mi experiencia personal con este paradigma o filosofía, y de cómo fue mi proceso de aprendizaje durante un proyecto en el que no tenía ni idea de qué implicaba a nivel de Desarrollo y Negocio.

read more…

¿Construcción y ejecución de test de aceptación? Concordion es tu amigo

Después de estar trabajando en varios proyectos con Concordion, un framework BDD, ha llegado el momento de hacer balance. En mi caso, considero que es un framework que me ha resultado bastante útil.

¿Por qué? Vamos a verlo a continuación. Vamos a ver en qué consiste trabajar con BDD, diferentes frameworks que aplican esta forma de trabajo y un caso práctico con una integración completa con Spring Boot, JPA, una BBDD en memoria H2 y el propio Concordion. ¿Empezamos?

read more…

Introducción a ATG Web Commerce para un Java Developer

En el mundo del comercio electrónico hay una cantidad abundante de opciones para llevar a cabo soluciones de eCommerce. En este post haremos una introducción a ATG Web Commerce intentando mostrar brevemente las características más interesantes para el desarrollador que se inicia en este framework “gigante” y valoraremos, desde un punto de vista personal, si vale la pena o no dicha herramienta.

read more…

TDD, una metodología para gobernarlos a todos

En los últimos tiempos, la metodología Test Driven Development se ha ido imponiendo como una forma de trabajo y un cambio de mentalidad en el mundo IT, pero lamentablemente siempre existen excepciones dentro de este sector, ya sea por mentalidad (“esto no vale para nada”) o bien por los deadlines que nos apremian (“esto es una pérdida de tiempo”).

Vamos a tratar de exponer a modo de introducción en qué consiste, cuáles son sus principios básicos, qué supone implantar esta metodología y qué ventajas nos aporta.

¿Preparados?

read more…