#challengeforohub
Tercer Challenge ONE-G6 Foro Hub
Este es el último desafío del programa ONE-G6, llamado ForoHub: en él, vamos a replicar este proceso a nivel de back end y, para eso, crearemos una API REST usando Spring.
Nuestra API se centrará específicamente en los tópicos, y debe permitir a los usuarios:
- Crear un nuevo tópico;
- Mostrar todos los tópicos creados;
- Mostrar un tópico específico;
- Actualizar un tópico;
- Eliminar un tópico.
Es lo que normalmente conocemos como CRUD* (CREATE, READ, UPDATE, DELETE) y es muy similar a lo que desarrollamos en LiterAlura, pero ahora de forma completa, agregando las operaciones de UPDATE y DELETE, y usando un framework que facilitará mucho nuestro trabajo.
EL objetivo con este challenge es implementar una API REST con las siguientes funcionalidades:
- API con rutas implementadas siguiendo las mejores prácticas del modelo REST;
- Validaciones realizadas según las reglas de negocio;
- Implementación de una base de datos relacional para la persistencia de la información;
- Servicio de autenticación/autorización para restringir el acceso a la información.
- IDE IntelliJ IDEA
- Java JDK versión 17 en adelante
- Maven versión 4 en adelante
- MySQL versión 8 en adelante
- Spring Boot versión 3 en adelante
- Spring Security
- Spring Data JPA
- Spring Boot DevTools
- Spring Web
- Flyway Migration
- Lombok
- Validation
- MySQL Driver
Para realizar las pruebas de usuario me apoye de Swagger.
El desarrollo de está aplicación fue bastante compleja en comparación al LiterAlura, pero gracias a los recursos quenos fueron proporcionando durante las clases pude resolver los "errores" que se me presentaron en el camino, y estoy feliz de haber cúlminado no solo este Challenge, sino también el programa ONE-G6 en colaboración con Alura Latam, se que la siguiente estapa será una experiencia inigualable.