Rendimiento de Java
Este curso está dirigido a programadores de Java que desean desarrollar aplicaciones eficientes. Tras consultar con el cliente, la formación puede impartirse utilizando una versión especializada de las herramientas, pensada para personas cuya única necesidad es detectar problemas de rendimiento (probadores, administradores); en este caso, no se requiere saber programar en Java.
Durante la capacitación, los participantes adquirirán conocimientos sobre los procesos y las herramientas modernas para desarrollar software eficiente en Java. Aprenderán a evitar trampas relacionadas con el rendimiento, realizarán mediciones de rendimiento (benchmarking), perfilado (profiling), ajuste fino (tuning) y análisis de memoria; además, explorarán trucos de optimización mediante colecciones o E/S. Los temas y herramientas aprendidos son aplicables independientemente de las tecnologías utilizadas en el proyecto, ya que nos centramos en el rendimiento a nivel de lenguaje, las herramientas disponibles y las bibliotecas embebidas. El módulo de ajuste aborda los parámetros de la JVM proporcionados por Oracle.
Temario del curso
Introducción
Vista general del rendimiento de la Máquina Virtual de Java
- Modelo de memoria de Java
- Compilador Just-In-Time (JIT)
- Metodología de evaluación del rendimiento
Gestión de memoria en Java (Garbage Collection)
- Fundamentos del recolector de basura
- Algoritmos de recolección de basura
- Tipos de recolectores de basura (GC Collectors)
Monitoreo de la JVM
- Monitoreo mediante línea de comandos
- Java Flight Recorder y Mission Control
- Herramientas de perfilado
Microbenchmarking
- Marco de microbenchmarks JMH
- Creación y configuración de un benchmark
- Ejecución e interpretación de resultados
Ajuste de la JVM
- Ajuste 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 de Java - Reserva
Rendimiento de Java - Consulta
Rendimiento de 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 capacitación, los participantes conocerán el uso específico de los temas seleccionados, los problemas básicos que se encuentran al utilizarlos y el rol del modelo de aplicación. La capacitación también incluye conocimientos básicos sobre las funciones de la biblioteca estándar del lenguaje. Es requisito previo conocer el entorno de desarrollo IDE utilizado para construir aplicaciones Java (por ejemplo, Eclipse, Netbeans). La capacitación no abarca temas relacionados con la interfaz de usuario.
Seguridad Java Avanzada
21 HorasIncluso los programadores experimentados de Java no dominan necesariamente todos los servicios de seguridad ofrecidos por este lenguaje, y también pueden carecer de conciencia sobre las distintas vulnerabilidades relevantes para aplicaciones web escritas en Java.
El curso, además de presentar los componentes de seguridad de Standard Java Edition (JSE), aborda cuestiones de seguridad relacionadas con Java Enterprise Edition (JEE) y servicios web. El análisis de servicios específicos se antecede a los fundamentos de la criptografía y la comunicación segura. Diversos ejercicios tratan sobre técnicas de seguridad declarativa y programática en JEE, mientras que tanto la seguridad en la capa de transporte como la seguridad de extremo a extremo en servicios web son objeto de estudio. El uso de todos estos componentes se presenta mediante varios ejercicios prácticos, donde los participantes pueden probar por sí mismos las APIs y herramientas analizadas.
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 cubren tanto problemas específicos del lenguaje como aquellos derivados del entorno de ejecución. Todas las vulnerabilidades y sus respectivos ataques se demuestran mediante ejercicios fáciles de comprender, seguidos de pautas de codificación recomendadas y posibles técnicas de mitigación.
Los participantes que cursen esta formación alcanzarán los siguientes objetivos
- Comprender los conceptos básicos de seguridad, la seguridad informática y la programación segura
- Aprender sobre vulnerabilidades web más allá de las OWASP Top Ten y conocer cómo evitarlas
- Comprender los conceptos de seguridad en servicios web
- Aprender a utilizar diversas características de seguridad del entorno de desarrollo Java
- Tener una comprensión práctica de la criptografía
- Entender las soluciones de seguridad de Java EE
- Aprender acerca de los errores de codificación típicos y cómo evitarlos
- Recibir información sobre algunas vulnerabilidades recientes en el marco de trabajo (framework) Java
- Adquirir conocimientos prácticos en el uso de herramientas de prueba de seguridad
- Obtener fuentes y lecturas complementarias sobre prácticas de codificación segura
Público objetivo
Desarrolladores
Patrones de Diseño (GoF) para Java
21 HorasEsta formación en vivo impartida por un instructor en Uruguay (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 formación, los participantes podrán:
- Comprender el propósito y los beneficios de los patrones de diseño.
- Aplicar eficazmente en Java los patrones Creacionales, Estructurales y de Comportamiento.
- Mejorar la reutilización, escalabilidad y 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). Entre sus características se incluyen capacidades de scripting, creación de Lenguajes Específicos de Dominio, metaprogramación en tiempo de ejecución y compilación, y programación funcional. Groovy suele utilizarse como complemento a Java.
En este entrenamiento en vivo con instructor, los participantes aprenderán cómo programar en Groovy mientras avanza paso a paso en la creación de una aplicación de ejemplo.
Audiencia objetivo
- Desarrolladores
Formato del curso
- Parte expositiva, parte discusión, ejercicios y práctica intensiva hands-on
Programación en Groovy para Principiantes
14 HorasEsta formación en vivo impartida por un instructor en Uruguay (en línea o presencial) está dirigida a desarrolladores principiantes que desean aprender los fundamentos de la programación en Groovy.
Al finalizar esta formación, los participantes podrán:
- Comprender los conceptos básicos de programación.
- Escribir scripts simples en Groovy y utilizar las funciones principales del núcleo de Groovy.
- Comprender y aplicar los principios básicos de la programación orientada a objetos utilizando Groovy.
- Aprender técnicas básicas de manejo de errores para gestionar errores de programación comunes y excepciones en Groovy.
Microservicios en Java
21 HorasEsta formación en vivo, impartida por un instructor en Uruguay (en línea o presencial), está dirigida a desarrolladores de Java con nivel intermedio que desean diseñar, desarrollar, implementar y mantener aplicaciones basadas en microservicios utilizando marcos de trabajo de Java como Spring Boot y Spring Cloud.
Al finalizar esta formación, los participantes podrán:
- Comprender los principios y beneficios de la arquitectura de microservicios.
- Construir e implementar microservicios utilizando Java y Spring Boot.
- Implementar el descubrimiento de servicios, la gestión de configuraciones y las puertas de enlace API (API gateways).
- Asegurar, monitorear y escalar microservicios de manera efectiva.
- Implementar microservicios utilizando Docker y Kubernetes.
Construcción de microservicios con Spring Boot, Docker y Kubernetes
21 HorasEsta formación en vivo dirigida por instructores en Uruguay (disponible en línea o en las instalaciones) está diseñada específicamente para desarrolladores intermedios a avanzados que buscan dominar el desarrollo de microservicios utilizando Spring Boot, Docker y Kubernetes.
Al finalizar esta formación, los participantes serán capaces de:
- 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 formación en vivo con instructor en Uruguay (en línea o presencial) está dirigida a desarrolladores que desean utilizar Quarkus para crear, probar y desplegar aplicaciones, aprovechando todo el poder de Java pero con un menor consumo de recursos.
Al finalizar esta formación, los participantes serán capaces de:
- Configurar el entorno de desarrollo necesario para comenzar a crear aplicaciones con Quarkus.
- Crear, compilar y ejecutar aplicaciones en modo nativo utilizando GraalVM.
- Aprovechar las herramientas y extensiones de Quarkus para construir aplicaciones nativas mediante Maven.
- Contenerizar, ejecutar y desplegar aplicaciones con Docker.
Quarkus para Desarrollo Nativo en Java y Microservicios
40 HorasEsta formación en vivo impartida por instructores en Uruguay (en línea o presencial) está dirigida a desarrolladores y arquitectos de nivel intermedio a avanzado que deseen desarrollar aplicaciones nativas de Java y microservicios utilizando Quarkus, optimizando el uso de memoria y el tiempo de inicio.
Al finalizar esta formación, los participantes serán capaces de:
- Desarrollar aplicaciones nativas de Java de alto rendimiento y ligeros utilizando Quarkus.
- Construir e implementar arquitecturas de servicios RESTful y microservicios.
- Utilizar GraalVM para la compilación nativa y optimizar la eficiencia del inicio y la memoria.
- Empaquetar y contenerizar aplicaciones para entornos Kubernetes y OpenShift.
RabbitMQ con Java y Spring
14 HorasEsta formación en vivo con instrucción presencial en <ubicación> (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 utilizando Spring para construir aplicaciones.
Al finalizar esta formación, los participantes serán capaces de:
- Usar Java y Spring con RabbitMQ para construir aplicaciones.
- Diseñar sistemas asíncronos impulsados por mensajes usando RabbitMQ.
- Crear y aplicar colas, temas, intercambios y vinculaciones en RabbitMQ
Spring Boot, React y Redux
14 HorasEsta formación impartida por un instructor en vivo en Uruguay (en línea o presencial) está dirigida a desarrolladores web que deseen construir aplicaciones web front-end y back-end funcionales con Spring Boot, React y Redux.
Al finalizar esta formación, los participantes podrán:
- Desarrollar una aplicación front-end con React y Redux.
- Crear APIs RESTful con Spring Boot.
- Asegurar servicios web mediante Spring Security y tokens web JWT.
Spring 5
21 HorasEsta formación en vivo con instructor en Uruguay (en línea o presencial) está dirigida a desarrolladores de Java que desean utilizar el framework Spring 5 para desarrollar e implementar aplicaciones empresariales.
Al finalizar esta formació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 mediante Spring Application.
- Utilizar el nuevo framework web reactivo, WebFlow, para hacer una aplicación reactiva.
- Integrar una aplicación Spring con aplicaciones heredadas de Java EE.
- Probar e implementar una aplicación Spring de grado empresarial.
Conceptos básicos de Spring con Spring Boot 3.5.5 y Java 21
14 HorasSpring es un marco integral para Java que simplifica el desarrollo de aplicaciones empresariales al ofrecer inyección de dependencias potente, una arquitectura modular y opciones de configuración optimizadas.
Este curso en vivo con instructor (en línea o presencial) está dirigido a desarrolladores de Java de nivel principiante que deseen construir aplicaciones web modernas y listas para producción utilizando la versión más reciente del Marco Spring y Spring Boot 3.5.5 con Java 21.
Al finalizar este entrenamiento, los participantes podrán:
- Comprender los principios fundamentales de Spring, incluyendo IoC, DI y AOP.
- Configurar aplicaciones Spring utilizando XML, anotaciones y JavaConfig.
- Desarrollar servicios RESTful mediante Spring Boot y JPA.
- Implementar operaciones CRUD, gestionar transacciones y administrar la persistencia de datos.
- Utilizar características avanzadas de Spring como perfiles, manejo de excepciones y serialización de datos.
Formato del curso
- Introducción teórica breve seguida de ejercicios prácticos extensos.
- Implementación práctica utilizando ejemplos del mundo real.
- Discusión interactiva y resolución guiada de problemas.
Opciones de personalización del curso
- Para solicitar una formación personalizada para este curso, contáctenos para coordinar los detalles.
Spring WebFlux: Programación Reactiva para Aplicaciones Web Escalables
35 HorasSpring WebFlux es un módulo de programación reactiva dentro del Spring Framework diseñado para construir aplicaciones web no bloqueantes y orientadas a eventos.
Esta formación en vivo, impartida por un instructor (en línea o presencial), está dirigida a desarrolladores de Java de nivel principiante e intermedio que desean crear aplicaciones escalables y receptivas utilizando Spring WebFlux.
Al finalizar esta formación, los participantes podrán:
- Comprender los fundamentos de la programación reactiva con Project Reactor.
- Construir y probar APIs REST no bloqueantes utilizando Spring WebFlux.
- Integrar WebFlux con bases de datos y servicios externos.
- Aplicar patrones reactivos a escenarios de aplicaciones del mundo real.
Formato del curso
- Clase interactiva y discusión.
- Bastantes ejercicios y práctica.
- Implementación práctica en un entorno de laboratorio en vivo.
Opciones de personalización del curso
- Para solicitar una formación personalizada para este curso, por favor contáctenos para coordinar los detalles.
Spring WebFlux
14 HorasEsta formación en vivo impartida por un instructor en Uruguay (en línea o presencial) está dirigida a desarrolladores que desean utilizar WebFlux para desarrollar e implementar aplicaciones reactivas.
Al finalizar esta formación, los participantes serán capaces de:
- Instalar y configurar Spring 5 y el marco WebFlux.
- Desarrollar aplicaciones y servicios reactivos.