Historia de la Evolución
Desde los inicios de Java hasta la era moderna de Spring Boot + Kotlin
- ☕
Java 1.0
James Gosling y Sun Microsystems lanzan Java 1.0, un lenguaje de programación orientado a objetos que revoluciona el desarrollo de software con su filosofía 'Write Once, Run Anywhere'.
Wikipedia "Java (programming language)"
- 🚀
Java 5 (Tiger)
Introducción de Generics, Annotations, Autoboxing y el for-mejorado. Características que modernizan profundamente el lenguaje.
Wikipedia "Java (programming language)"
- 🌱
Spring Framework 1.0
Rod Johnson y el equipo de Spring lanzan la versión 1.0 del framework, introduciendo Inversión de Control y Programación Orientada a Aspectos para Java empresarial.
Spring.io "Spring Framework History"
- 💡
IntelliJ IDEA (1.0)
JetBrains lanza IntelliJ IDEA, un IDE para Java que revoluciona el desarrollo con navegación inteligente, refactorización avanzada y productividad alta.
Wikipedia "IntelliJ IDEA"
- 🎯
Kotlin Anuncio
JetBrains anuncia el lenguaje Kotlin para la JVM, diseñado para mejorar la productividad, seguridad de nulos y sintaxis concisa.
Ten Years of Kotlin!
- ⚡
Spring Boot 1.0
Se lanza Spring Boot 1.0, simplificando radicalmente la configuración de aplicaciones Spring mediante auto-configuración, servidores embebidos y dependencias ‘starter’.
Spring.io "Spring Boot 1.0 Released"
- 🤝
Kotlin + Spring Official
Spring Framework 5.0 añade soporte oficial para Kotlin. Google anuncia Kotlin como lenguaje oficial para Android.
Spring.io "Spring Framework 5.0 Released"
- 🎊
Spring Boot 3.0
Spring Boot 3.0 con Java 17+ baseline, soporte nativo de GraalVM, Jakarta EE 9+, y mejoras significativas en observabilidad y rendimiento.
Spring.io "Spring Boot 3.0 Released"
- ✨
Modern Spring Boot + Kotlin
La combinación perfecta: Spring Boot 3.x + Kotlin ofrece desarrollo moderno, conciso y type-safe para crear APIs REST robustas y microservicios.
Spring.io "Building RESTful Web Services with Spring Boot and Kotlin"
Qué Aprender para APIs REST con Spring Boot
Conocimientos esenciales organizados por área.
@RestController
@RequestMapping("/api/products")
class ProductController(
private val productService: ProductService
) {
@GetMapping
fun getAllProducts(): List<Product> = productService.findAll()
@PostMapping
fun createProduct(@RequestBody product: Product): Product = productService.save(product)
@GetMapping("/{id}")
fun getProduct(@PathVariable id: Long): Product = productService.findById(id)
?: throw NotFoundException("Product not found")
}
Roadmap de Aprendizaje Spring Boot + Kotlin
Plan estructurado de 16-20 semanas para dominar el stack
🎓 Recursos Recomendados
📖 Documentación Oficial
💻 Práctica
Preguntas Frecuentes
¿Qué es el curso de Spring Boot de Arthurolg?
Es un curso online gamificado, inspirado en Pokémon, para aprender Spring Boot y Kotlin con arquitectura hexagonal y TDD. Los retos usan casos de hotelería y ecommerce.
¿Necesito saber Java antes de empezar?
Conviene una base de Java o Kotlin: orientación a objetos, colecciones y Git. La fase 1 del roadmap cubre esos fundamentos en 2 o 3 semanas.
¿Qué versión de Spring Boot y Java cubre el roadmap?
El recorrido llega a Spring Boot 3, con Java 17 o superior como baseline, Jakarta EE 9+ y soporte nativo de GraalVM.
¿Por qué el curso combina Kotlin y Spring Boot?
Spring Boot 3 con Kotlin permite APIs REST y microservicios con código más conciso y null-safety, sin salir del ecosistema Java.
¿Cuánto dura el roadmap?
Son siete fases: fundamentos, Spring Core, base de datos, APIs avanzadas, seguridad, testing y producción. Cada fase está pensada para 2 a 4 semanas.
¿Qué se practica además de crear una API?
Arquitectura hexagonal, TDD, Spring Data JPA, Spring Security con JWT y el paso a producción con Docker, CI/CD y monitorización.
¿Dónde está el código del curso?
El repositorio público es https://github.com/lgzarturo/springboot-course. El roadmap y la historia del stack están en https://www.arthurolg.com/springboot.
¿El roadmap sustituye a la documentación oficial?
No. Ordena el aprendizaje y enlaza la documentación de Spring Boot en https://docs.spring.io/spring-boot/ y los artículos del blog.