Rendimiento en Java
El curso está dirigido a programadores de Java que desean desarrollar aplicaciones eficientes. Tras consultar con el cliente, el curso puede impartirse en una versión especial de la herramienta, dirigida a personas que únicamente necesitan detectar problemas de rendimiento (probadores, administradores); en este caso, no se requiere programación en Java.
Durante la formación, los participantes aprenderán sobre los procesos y las herramientas modernas para producir software eficiente en Java. Conocerán las trampas relacionadas con el rendimiento, la medición de puntos de referencia (benchmarking), el perfilado (profiling), la optimización (tuning), el análisis de memoria y técnicas de mejora del rendimiento 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, herramientas y bibliotecas integradas. La optimización aborda los parámetros de la JVM proporcionados por Oracle.
Temario del curso
Introducción
Panorama general del rendimiento de la Máquina Virtual de Java
- Modelo de memoria de Java
- Compilador Just-In-Time
- Metodología de rendimiento
Gestión de basura en Java
- Fundamentos del GC
- Algoritmos de recolección de basura
- Tipos de recolectores de GC
Monitoreo de la JVM
- Monitoreo por 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
Optimización (tuning) de la JVM
- Optimización de memoria
- Selección del tipo de GC
Resumen y próximos pasos
Requerimientos
- Programación en Java
Audiencia 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
Testimonios (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, el participante conocerá el uso específico de los temas seleccionados, los problemas básicos que se encuentran al utilizarlos y el papel del modelo de aplicación. La formación también incluye conocimientos básicos sobre las funciones de la biblioteca estándar del lenguaje. La formación requiere conocimiento del entorno de desarrollo IDE utilizado para crear aplicaciones Java (por ejemplo, Eclipse, NetBeans). La formación no incluye temas de interfaz de usuario.
Seguridad Java Avanzada
21 HorasIncluso los programadores de Java con experiencia no dominan necesariamente todos los servicios de seguridad que ofrece Java, ni son conscientes de las distintas vulnerabilidades relevantes para las aplicaciones web escritas en este lenguaje.
El curso, además de presentar los componentes de seguridad de la Edición Estándar de Java, aborda las cuestiones de seguridad de la Edición Empresarial de Java (JEE) y los servicios web. El análisis de servicios específicos se precede por 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 se discuten tanto la seguridad a nivel de capa de transporte como de extremo a extremo en los servicios web. El uso de todos los componentes se presenta a través de varios ejercicios prácticos, donde los participantes pueden probar por sí mismos las APIs y herramientas analizadas.
El curso también analiza y explica los fallos 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 los ataques correspondientes se demuestran a través de ejercicios fáciles de entender, seguidos de las directrices de codificación recomendadas y las posibles técnicas de mitigación.
Los participantes que asistan a este curso
- Comprenderán los conceptos básicos de seguridad, la ciberseguridad y la codificación segura.
- Aprenderán sobre vulnerabilidades web más allá del OWASP Top Ten y conocerá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.
- Comprenderán las soluciones de seguridad de Java EE.
- Aprenderán sobre errores comunes de codificación y cómo evitarlos.
- Obtendrán información sobre algunas vulnerabilidades recientes en el marco de trabajo de Java.
- Adquirirán conocimiento práctico en 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 formación en vivo impartida por un instructor en Venezuela (en línea o presencial) está dirigida a desarrolladores de Java con 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 serán capaces de:
- Comprender el propósito y las ventajas de los patrones de diseño.
- Aplicar eficazmente en Java los patrones creacionales, estructurales y de comportamiento.
- Mejorar la reutilización del código, su escalabilidad y mantenibilidad.
- Reestructurar bases de código existentes mediante el uso de 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 Específicos del Dominio, metaprogramación en tiempo de ejecución y compilación, y programación funcional. Groovy se utiliza a menudo como complemento de Java.
En este entrenamiento en vivo dirigido por un instructor, los participantes aprenderán a programar en Groovy mientras avanzan en la creación de una aplicación de ejemplo.
Público objetivo
- Desarrolladores
Formato del curso
- Parte lección, parte discusión, ejercicios y práctica intensiva
Programación en Groovy para Principiantes
14 HorasEsta formación en vivo impartida por un instructor en <ubicación> (en línea o presencial) está dirigida a desarrolladores principiantes que desean aprender los fundamentos de la programación en Groovy.
Al finalizar esta capacitación, los participantes serán capaces de:
- Comprender los conceptos básicos de programación.
- Crear scripts sencillos en Groovy y utilizar las características principales del núcleo de Groovy.
- 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 comunes de programación y excepciones en Groovy.
Microservicios en Java
21 HorasEsta formación en vivo con instructor en Venezuela (en línea o presencial) está dirigida a desarrolladores de Java de nivel intermedio que desean diseñar, desarrollar, implementar y mantener aplicaciones basadas en microservicios utilizando frameworks de Java como Spring Boot y Spring Cloud.
Al finalizar esta formación, los participantes serán capaces de:
- Comprender los principios y beneficios de la arquitectura de microservicios.
- Construir e implementar microservicios utilizando Java y Spring Boot.
- Implementar el descubrimiento de servicios, gestión de configuraciones y pasarelas API (API Gateways).
- Asegurar, monitorear y escalar los microservicios de manera efectiva.
- Implementar microservicios usando Docker y Kubernetes.
Construcción de Microservicios con Spring Boot, Docker y Kubernetes
21 HorasEsta formación en vivo con instructor en Venezuela (disponible en línea o presencial) está diseñada específicamente para desarrolladores intermedios a avanzados que desean 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 fundamental de Docker en la contenedorización de microservicios.
- Configurar clústeres de Kubernetes para implementar y orquestar microservicios.
Quarkus para Desarrolladores
14 HorasEsta formación en vivo con instructor en <ubicación> (en línea o presencial) está dirigida a desarrolladores que deseen utilizar Quarkus para construir, probar e implementar 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.
- Compilar, construir y ejecutar aplicaciones en modo nativo utilizando GraalVM.
- Aprovechar las herramientas y extensiones de Quarkus para construir aplicaciones nativas mediante Maven.
- Contenerizar, ejecutar e implementar aplicaciones con Docker.
Quarkus para Desarrollo Nativo en Java y Microservicios
40 HorasEsta capacitación en vivo y dirigida por instructores en <ubicación> (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 uso optimizado de memoria y tiempo de inicio.
Al finalizar esta capacitación, los participantes podrán:
- Desarrollar aplicaciones nativas en Java de alto rendimiento y ligera mediante Quarkus.
- Construir e implementar servicios RESTful y arquitecturas de microservicios.
- Utilizar GraalVM para la compilación nativa y optimizar el tiempo de inicio y la eficiencia en memoria.
- Empaquetar y contenererizar aplicaciones para entornos Kubernetes y OpenShift.
RabbitMQ con Java y Spring
14 HorasEsta formación en vivo dirigida por un instructor en <ubicación> (en línea o presencial) está dirigida a arquitectos de software y desarrolladores web que deseen usar RabbitMQ como middleware de mensajería y programar en Java usando Spring para crear aplicaciones.
Al finalizar esta formación, los participantes serán capaces de:
- Utilizar Java y Spring con RabbitMQ para construir aplicaciones.
- Diseñar sistemas asíncronos impulsados por mensajes usando RabbitMQ.
- Crear y aplicar colas (queues), temas (topics), intercambios y vinculaciones en RabbitMQ
Spring Boot, React y Redux
14 HorasEsta formación en vivo impartida por un instructor en Venezuela (en línea o presencial) está dirigida a desarrolladores web que deseen crear aplicaciones web front-end y back-end funcionales con Spring Boot, React y Redux.
Al finalizar esta formación, los participantes serán capaces de:
- Desarrollar una aplicación front-end con React y Redux.
- Crear APIs RESTful con Spring Boot.
- Asegurar los servicios web con Spring Security y tokens web JWT.
Spring 5
21 HorasEsta formación en vivo, impartida por un instructor, en <ubicación> (en línea o presencial), está dirigida a desarrolladores de Java que desean utilizar el framework Spring 5 para desarrollar e implementar aplicaciones web 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 con Spring Application.
- Utilizar el nuevo framework web reactivo, WebFlow, para hacer que una aplicación sea reactiva.
- Integrar una aplicación Spring con aplicaciones Java EE legacy.
- Probar y desplegar una aplicación Spring de calidad empresarial.
Fundamentos 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 proporcionar inyección de dependencias poderosa, arquitectura modular y opciones de configuración optimizadas.
Este entrenamiento en vivo dirigido por instructores (en línea o presencial) está diseñado para desarrolladores de Java principiantes que desean construir aplicaciones web modernas, 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 serán capaces de:
- Comprender los principios fundamentales de Spring, incluyendo IoC, DI y AOP.
- Configurar aplicaciones Spring utilizando XML, anotaciones y JavaConfig.
- Desarrollar servicios RESTful usando Spring Boot y JPA.
- Implementar operaciones CRUD, gestionar transacciones y manejar la persistencia de datos.
- Utilizar características avanzadas de Spring como perfiles, manejo de excepciones y serialización de datos.
Formato del Curso
- Breve introducción teórica seguida de extensos ejercicios prácticos.
- Implementación práctica utilizando ejemplos del mundo real.
- Discusión interactiva y resolución de problemas guiada.
Opciones de Personalización del Curso
- Para solicitar un entrenamiento personalizado para este curso, por favor 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 de Spring, diseñado para construir aplicaciones web no bloqueantes y basadas en eventos.
Esta formación en vivo con instructor (en línea o presencial) está dirigida a desarrolladores de Java de nivel principiante e intermedio que desean 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 usando Spring WebFlux.
- Integrar WebFlux con bases de datos y servicios externos.
- Aplicar patrones reactivos a escenarios de aplicaciones del mundo real.
Formato del curso
- Conferencias y discusiones interactivas.
- Numerosos ejercicios y prácticas.
- 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 coordinarla.
Spring WebFlux
14 HorasEsta formación en vivo impartida por un instructor en Venezuela (en línea o presencial) está dirigida a desarrolladores que deseen 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.