Java Profesional: Técnicas Avanzadas
Java Profesional: Técnicas Avanzadas
Resumen:
Libro «Java Profesional: Técnicas Avanzadas» — es una guía práctica para desarrolladores que ya dominan los fundamentos de Java y quieren pasar al siguiente nivel. El autor, Alexéi Sokólov, comparte su experiencia trabajando con sistemas de alta carga, revelando los detalles de la Java Virtual Machine (JVM), la concurrencia y la optimización del rendimiento.
¿De qué trata este libro?
No es otra introducción a la sintaxis. Te sumergirás en las profundidades de la plataforma Java:
- Modelo de Memoria de Java (JMM) — cómo funcionan realmente los hilos, volatile, happens-before y las barreras de memoria.
- Concurrencia y Concurrency — desde Thread y ExecutorService hasta Fork/Join y CompletableFuture. Análisis de race conditions, deadlocks y algoritmos lock-free.
- Garbage Collection — análisis detallado de los GC (G1, ZGC, Shenandoah), configuración de recolectores de basura para baja latencia.
- Rendimiento y Perfilado — uso de JMH, JFR, VisualVM, Async Profiler. Búsqueda de cuellos de botella, optimización de caché de CPU y gestión de memoria.
- Patrones Avanzados — object pools, Object Pooling, Flyweight, Reactor, Proactor, cadenas asíncronas, así como estilo funcional con lambdas y Stream API.
- Arquitectura de Sistemas de Alta Carga — almacenamiento en caché (Caffeine, Hazelcast), trabajo con bases de datos (pools de conexiones, operaciones batch), creación de servicios de red eficientes con Netty.
¿Para quién es este libro?
- Desarrolladores Java con experiencia de 2-3 años que deseen profundizar sus conocimientos.
- Ingenieros que se preparan para entrevistas técnicas en grandes empresas (diseño de sistemas, JVM).
- Tech Leads y arquitectos que quieran tomar decisiones informadas sobre rendimiento y escalabilidad.
¿Qué aprenderás?
- Cómo escribir código thread-safe sin bloqueos inesperados.
- Cómo configurar la JVM para una aplicación específica (mínima pausa de GC, máximo rendimiento).
- Cómo perfilar una aplicación y encontrar fugas de memoria.
- Cómo aplicar patrones modernos para programación asíncrona y reactiva.
- Cómo construir sistemas que soporten miles de peticiones por segundo.
El libro contiene numerosos ejemplos reales, fragmentos de código listos para usar y ejercicios. Cada capítulo finaliza con tareas prácticas para afianzar el material. Si quieres dejar de ser solo un «usuario de Java» y convertirte en un ingeniero que entiende el funcionamiento interno de la plataforma, este libro es para ti.
Nota: el libro está orientado a Java 17+ y versiones modernas de frameworks (Spring Boot 3, Micronaut, Quarkus). Todos los ejemplos de código están disponibles en el repositorio de GitHub.