Rendimiento en Java
Este curso está diseñado para programadores de Java que desean crear aplicaciones eficientes. Tras una consulta con el cliente, el curso puede impartirse en una versión especializada de la herramienta, dirigida a personas que solo necesitan detectar problemas de rendimiento (probadores, administradores); en este caso, no se requiere programación en Java.
Durante la capacitación, los participantes aprenderán sobre el proceso y las herramientas modernas para desarrollar software eficiente en Java. Conocerán trampas relacionadas con el rendimiento, técnicas de medición de rendimiento (benchmarking), análisis de perfiles (profiling), optimización (tuning), análisis de memoria y trucos de rendimiento mediante colecciones o operaciones de entrada/salida (IO). Los temas y herramientas aprendidos son aplicables independientemente de las tecnologías utilizadas en el proyecto, ya que nos enfocamos en el rendimiento a nivel de lenguaje, las herramientas y las bibliotecas integradas. La sección de optimización (tuning) aborda los parámetros de la JVM proporcionados por Oracle.
Temario del curso
Introducción
Visión general del rendimiento de la Máquina Virtual de Java (JVM)
- Modelo de memoria de Java
- Compilador Just In Time (JIT)
- Metodología de medición del rendimiento
Recolección de basura en Java (Garbage Collection)
- Conceptos básicos de recolección de basura (GC)
- Algoritmos de recolección de basura
- Tipos de recolectores de basura (GC Collectors)
Monitoreo de la JVM
- Monitoreo desde la línea de comandos
- Java Flight Recorder y Mission Control
- Herramientas de análisis de perfiles (profiling)
Micropruebas de rendimiento (Microbenchmarking)
- Marco de trabajo JMH para micropruebas
- Creación y configuración de una prueba de rendimiento
- Ejecución e interpretación de resultados
Optimización de la JVM (JVM Tuning)
- Optimización de memoria
- Selección del tipo de recolector de basura (GC)
Resumen y próximos pasos
Requerimientos
- Programación en Java
Público objetivo
- Programadores de Java
Los cursos públicos requieren más de 5 participantes.
Rendimiento en Java - Reserva
Rendimiento en Java - Consulta
Rendimiento en Java - Solicitud de consultoría
Reseñas (2)
El formador era bueno explicando los temas con detalle y haciéndolos fáciles de entender
Lewis Nangle - AquaQ Analytics
Curso - Java Performance
Traducción Automática
-los ejemplos de código realmente ayudaron a la comprensión -Fulvio se mostró muy conocedor y explicó todo con mucho detalle
Paul Doherty - AquaQ Analytics
Curso - Java Performance
Traducción Automática
Próximos cursos
Cursos Relacionados
Java Avanzado
28 HorasDurante la formación, los participantes conocerán el uso específico de temas seleccionados, los problemas básicos que surgen al utilizarlos y el rol del modelo de aplicación. La formación también incluye conocimientos básicos sobre las funciones de la biblioteca estándar del lenguaje. Se requiere conocimiento del entorno de desarrollo (IDE) utilizado para construir aplicaciones en Java (por ejemplo, Eclipse, NetBeans). La formación no incluye temas relacionados con la interfaz de usuario.
Seguridad Java Avanzada
21 HorasIncluso los programadores de Java con experiencia no siempre dominan todos los servicios de seguridad que ofrece Java ni son conscientes de las vulnerabilidades diferentes que afectan a las aplicaciones web escritas en este lenguaje.
Además de introducir los componentes de seguridad de la Plataforma Java SE, el curso aborda temas de seguridad de Java EE (Plataforma Empresarial de Java) y de servicios web. Antes de discutir servicios específicos, se cubren los fundamentos de la criptografía y la comunicación segura. Diversos ejercicios tratan técnicas de seguridad declarativa y programática en Java EE, mientras que se analizan tanto la seguridad en la capa de transporte como la seguridad de extremo a extremo en servicios web. El uso de todos estos componentes se presenta mediante varios ejercicios prácticos, donde los participantes pueden probar por sí mismos las API y herramientas mencionadas.
El curso también recorre y explica las fallas de programación más frecuentes y graves del lenguaje y la plataforma Java, así como las vulnerabilidades relacionadas con la web. Además de los errores típicos cometidos por programadores de Java, las vulnerabilidades de seguridad introducidas abarcan tanto problemas específicos del lenguaje como aquellos derivados del entorno de tiempo de ejecución. Todas las vulnerabilidades y los ataques correspondientes se demuestran mediante ejercicios fáciles de entender, seguidos de las directrices recomendadas de codificación y las técnicas posibles de mitigación.
Los participantes que cursen este programa:
- Comprenderán los conceptos básicos de seguridad, ciberseguridad y codificación segura.
- Aprenderán sobre vulnerabilidades web más allá del Top Ten de OWASP y sabrán cómo evitarlas.
- Comprenderán los conceptos de seguridad de los servicios web.
- Aprenderán a utilizar diversas características de seguridad del entorno de desarrollo de Java.
- Tendrán una comprensión práctica de la criptografía.
- Entenderán las soluciones de seguridad de Java EE.
- Aprenderán sobre errores comunes de codificación y cómo evitarlos.
- Recibirán información sobre algunas vulnerabilidades recientes en el marco de trabajo de Java.
- Obtendrán conocimientos prácticos sobre el uso de herramientas de prueba de seguridad.
- Recibirán fuentes y lecturas adicionales sobre prácticas de codificación segura.
Público objetivo
Desarrolladores
Patrones de Diseño (GoF) para Java
21 HorasEsta capacitación impartida por un instructor, en vivo Colombia (en línea o presencial), está dirigida a desarrolladores de Java de nivel intermedio que desean aplicar patrones de diseño para mejorar la estructura, la mantenibilidad y la escalabilidad del software.
Al finalizar esta capacitación, los participantes podrán:
- Comprender el propósito y los beneficios de los patrones de diseño.
- Aplicar de manera efectiva patrones creacionales, estructurales y de comportamiento en Java.
- Mejorar la reutilización, la escalabilidad y la mantenibilidad del código.
- Refactorizar bases de código existentes utilizando patrones de diseño.
Programación Groovy
21 HorasApache Groovy es un lenguaje de programación dinámico para la JVM (Máquina Virtual de Java). Algunas de sus características incluyen capacidades de scripting, creación de lenguajes de dominio específico (DSL), metaprogramación en tiempo de ejecución y de compilación, así como programación funcional. Groovy se utiliza frecuentemente como complemento de Java.
En esta capacitación en vivo dirigida por un instructor, los participantes aprenderán a programar en Groovy mientras avanzan paso a paso en la creación de una aplicación de ejemplo.
Público objetivo
- Desarrolladores
Formato del curso
- Una combinación de clase magistral, discusión, ejercicios y práctica intensiva guiada
Programación en Groovy para Principiantes
14 HorasEste entrenamiento impartido por un instructor, en vivo en Colombia (en línea o presencial), está dirigido a desarrolladores de nivel principiante que desean aprender los fundamentos de la programación en Groovy.
Al finalizar este entrenamiento, los participantes serán capaces de:
- Comprender los conceptos básicos de programación.
- Escribir scripts sencillos en Groovy y aprovechar las funciones principales de este lenguaje.
- Comprender y aplicar los principios fundamentales de la programación orientada a objetos utilizando Groovy.
- Aprender técnicas básicas de manejo de errores para gestionar errores y excepciones comunes en la programación con Groovy.
Microservicios en Java
21 HorasEsta capacitación en vivo, impartida por un instructor en Colombia (en línea o en sitio), está dirigida a desarrolladores de Java de nivel intermedio que deseen diseñar, desarrollar, implementar y mantener aplicaciones basadas en microservicios utilizando frameworks de Java como Spring Boot y Spring Cloud.
Al finalizar esta capacitación, los participantes estarán en capacidad de:
- Comprender los principios y beneficios de la arquitectura de microservicios.
- Crear e implementar microservicios utilizando Java y Spring Boot.
- Implementar descubrimiento de servicios, gestión de configuración y gateways de API.
- Proteger, monitorear y escalar microservicios de manera efectiva.
- Implementar microservicios utilizando Docker y Kubernetes.
Construcción de microservicios con Spring Boot, Docker y Kubernetes
21 HorasEste entrenamiento en vivo con instructor en Colombia (disponible en línea o en sitio) está dirigido a desarrolladores de nivel intermedio a avanzado que desean dominar el desarrollo de microservicios utilizando Spring Boot, Docker y Kubernetes.
Al finalizar este entrenamiento, los participantes podrán:
- Comprender los principios de la arquitectura de microservicios.
- Construir microservicios listos para producción utilizando Spring Boot.
- Entender el papel crucial de Docker en la contenedorización de microservicios.
- Configurar clústeres de Kubernetes para desplegar y orquestar microservicios.
Quarkus para desarrolladores
14 HorasEsta capacitación en vivo, impartida por un instructor en Colombia (en línea o en el sitio), está dirigida a desarrolladores que deseen utilizar Quarkus para crear, probar e implementar aplicaciones con el máximo potencial de Java, pero con un menor consumo de recursos.
Al finalizar esta capacitación, los participantes serán capaces de:
- Configurar el entorno de desarrollo necesario para comenzar a crear aplicaciones con Quarkus.
- Construir, compilar y ejecutar aplicaciones en modo nativo utilizando GraalVM.
- Aprovechar las herramientas y extensiones de Quarkus para crear aplicaciones nativas con Maven.
- Contenerizar, ejecutar e implementar aplicaciones con Docker.
Quarkus para Desarrollo Nativo en Java y Microservicios
40 HorasEsta capacitación impartida por un instructor, en vivo en Colombia (en línea o presencial), está dirigida a desarrolladores y arquitectos de nivel intermedio a avanzado que deseen desarrollar aplicaciones nativas en Java y microservicios utilizando Quarkus, con un uso optimizado de la memoria y tiempos de inicio reducidos.
Al finalizar esta capacitación, los participantes podrán:
- Desarrollar aplicaciones nativas en Java de alto rendimiento y ligera utilizando Quarkus.
- Construir y desplegar servicios RESTful y arquitecturas de microservicios.
- Utilizar GraalVM para la compilación nativa y optimizar el inicio y la eficiencia en el uso de la memoria.
- Empaquetar y contenerizar aplicaciones para entornos de Kubernetes y OpenShift.
RabbitMQ con Java y Spring
14 HorasEsta capacitación presencial impartida por un instructor en Colombia (en línea o in situ) está dirigida a arquitectos de software y desarrolladores web que desean utilizar RabbitMQ como middleware de mensajería y programar en Java con Spring para desarrollar aplicaciones.
Al finalizar esta capacitación, los participantes podrán:
- Utilizar Java y Spring con RabbitMQ para desarrollar aplicaciones.
- Diseñar sistemas asíncronos impulsados por mensajes utilizando RabbitMQ.
- Crear y aplicar colas, temas, intercambios y vinculaciones en RabbitMQ.
Spring Boot, React y Redux
14 HorasEsta capacitación impartida por un instructor, en vivo en Colombia (en línea o en sitio), está dirigida a desarrolladores web que desean construir aplicaciones web funcionales de front-end y back-end con Spring Boot, React y Redux.
Al finalizar esta capacitación, los participantes estarán en capacidad de:
- Construir una aplicación de front-end con React y Redux.
- Crear APIs RESTful con Spring Boot.
- Proteger servicios web con Spring Security y tokens JWT.
Spring 5
21 HorasEsta capacitación presencial, impartida por un instructor en Colombia (en línea o en el sitio), está dirigida a desarrolladores de Java que desean utilizar el framework Spring 5 para desarrollar e implementar aplicaciones web empresariales.
Al finalizar esta capacitación, los participantes podrán:
- Instalar y configurar Spring 5.
- Comprender e implementar las últimas características de Spring 5.
- Acceder a bases de datos con Spring Application.
- Utilizar el nuevo framework reactivo para la web, WebFlow, para hacer que una aplicación sea reactiva.
- Integrar una aplicación de Spring con aplicaciones Java EE heredadas.
- Probar e implementar una aplicación empresarial de nivel empresarial basada en Spring.
Fundamentos de Spring con Spring Boot 3.5.5 y Java 21
14 HorasSpring es un framework integral de Java que simplifica el desarrollo de aplicaciones empresariales al ofrecer inyección de dependencias potente, arquitectura modular y opciones de configuración optimizadas.
Este entrenamiento presencial, impartido por un instructor (en línea o en sitio), está dirigido a desarrolladores de Java de nivel principiante que desean construir aplicaciones web modernas y listas para producción utilizando la última versión del Framework Spring y Spring Boot 3.5.5 con Java 21.
Al finalizar este entrenamiento, los participantes podrán:
- Comprender los principios fundamentales de Spring, incluidos IoC, DI y AOP.
- Configurar aplicaciones de Spring usando XML, anotaciones y JavaConfig.
- Desarrollar servicios RESTful con Spring Boot y JPA.
- Implementar operaciones CRUD, manejar transacciones y gestionar la persistencia de datos.
- Utilizar funciones avanzadas de Spring como perfiles, manejo de excepciones y serialización de datos.
Formato del curso
- Breve introducción teórica seguida de ejercicios prácticos extensos.
- Implementación práctica con ejemplos del mundo real.
- Discusión interactiva y resolución guiada de problemas.
Opciones de personalización del curso
- Para solicitar una capacitación personalizada para este curso, contáctenos para coordinarlo.
Spring WebFlux: Programación Reactiva para Aplicaciones Web Escalables
35 HorasSpring WebFlux es un módulo de programación reactiva dentro del Framework Spring diseñado para construir aplicaciones web no bloqueantes y basadas en eventos.
Esta capacitación presencial, impartida por un instructor (en línea o en sitio), está dirigida a desarrolladores Java de nivel principiante a intermedio que deseen crear aplicaciones escalables y responsivas utilizando Spring WebFlux.
Al finalizar esta capacitación, los participantes podrán:
- Comprender los fundamentos de la programación reactiva con Project Reactor.
- Construir y probar APIs RESTful no bloqueantes utilizando Spring WebFlux.
- Integrar WebFlux con bases de datos y servicios externos.
- Aplicar patrones reactivos a escenarios reales de aplicaciones.
Formato del Curso
- Conferencia interactiva y discusión.
- Numerosos ejercicios y práctica.
- Implementación práctica en un entorno de laboratorio en vivo.
Opciones de Personalización del Curso
- Para solicitar una capacitación personalizada para este curso, por favor contáctenos para coordinar.
Spring Webflux
14 HorasEsta capacitación en vivo, dirigida por un instructor en Colombia (en línea o en el sitio), está dirigida a desarrolladores que desean utilizar WebFlux para desarrollar e implementar aplicaciones reactivas.
Al finalizar esta capacitación, los participantes podrán:
- Instalar y configurar Spring 5 y el marco WebFlux.
- Desarrollar aplicaciones y servicios reactivos.