Java 3 · Colecciones y APIs fundamentales
Java 3 continúa directamente Java 2. Para avanzar con comodidad, debes saber diseñar clases, crear objetos, trabajar con referencias y arrays, proteger el estado mediante encapsulación y organizar colaboraciones con composición, herencia, polimorfismo e interfaces. También utilizaremos packages e imports con naturalidad.
Hasta ahora, los arrays nos han permitido reunir varios datos u objetos cuando conocíamos de antemano su capacidad. Sin embargo, muchas aplicaciones necesitan añadir y eliminar elementos, evitar duplicados, asociar claves con valores o transformar conjuntos de información cuyo tamaño cambia durante la ejecución.
En este curso pasaremos de modelar objetos a gestionar conjuntos de objetos, errores, fechas y datos persistentes. Conoceremos las colecciones dinámicas y varias APIs fundamentales de Java para resolver esas necesidades sin construir cada mecanismo desde cero.
También aprenderemos a detectar y comunicar situaciones excepcionales, validar operaciones, representar fechas y tiempo, y leer o escribir información local mediante las herramientas estándar de Java. El objetivo no será memorizar APIs, sino elegirlas y combinarlas con un propósito claro.
Las lambdas aparecerán cuando ya conozcamos las estructuras y operaciones sobre las que trabajan. Después introduciremos Stream API para expresar transformaciones de datos de forma progresiva; no empezaremos por los pipelines sin haber construido antes esa base.
Al terminar podrás desarrollar una aplicación organizada que gestione colecciones de objetos, mantenga sus reglas, trate errores, trabaje con fechas y persista información localmente. El proyecto final reunirá estas capacidades sin depender de librerías externas.
Java 4 continuará el recorrido con herramientas y técnicas que quedan fuera de este nivel. Aquí no abordaremos Maven, Gradle, JUnit, logging como tooling, concurrencia, JDBC, Spring, REST, JPA/Hibernate ni desarrollo backend.
Empezaremos entendiendo por qué Java necesita genéricos y cómo se organiza Collections Framework antes de elegir una colección concreta.