En este repositorio, exploraremos los fundamentos y técnicas avanzadas de programación concurrente en Java, abordando conceptos esenciales y prácticas efectivas para trabajar con concurrencia de manera segura y eficiente.
Este curso ofrece una visión completa sobre programación concurrente en Java, incluyendo:
- Fundamentos de la programación concurrente: conceptos básicos, ventajas y desafíos.
- Streams y Expresiones Lambda: utilización de streams y expresiones lambda para operaciones concurrentes.
- Métodos por Referencia: cómo utilizar métodos por referencia en operaciones concurrentes.
- Concurrencia con Stream (Parallel): aprovechamiento de la concurrencia en operaciones de streams.
- Filter: utilización del método Filter en operaciones concurrentes.
- Métodos Terminales y No Terminales: comprensión de los métodos terminales y no terminales en operaciones concurrentes.
- Webscraper con Concurrencia: implementación de webscrapers concurrentes para mejorar el rendimiento.
- Variables Atómicas: uso de variables atómicas para operaciones seguras en entornos concurrentes.
- Concurrencia: Deadlock, Livelock y Starvation: comprensión y manejo de situaciones de concurrencia como deadlock, livelock y starvation.
- Patrón de diseño Builder: aplicación del patrón de diseño Builder en contextos concurrentes para la creación de objetos.
- Optional: utilización de la clase Optional para manejar valores nulos de manera segura en operaciones concurrentes.
- Calendar vs LocalDateTime: comparación entre las clases Calendar y LocalDateTime para trabajar con fechas y tiempos en contextos concurrentes.
- Ejemplo: Variables Atómicas: ejemplos prácticos de implementación y uso de variables atómicas.
- Detalles específicos de Java: exploración de características específicas de Java relevantes para la programación concurrente.
- Árbol de Excepciones: comprensión y manejo de la jerarquía de excepciones en entornos concurrentes.
- Interfaces Funcionales y Anotaciones: utilización de interfaces funcionales y anotaciones en programación concurrente.