Gracias por enviar su consulta! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Gracias por enviar su reserva! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Duración 21 horas
Temario del curso
Introducción a Groovy
- Introducción a Apache Groovy
- Historia y evolución de Groovy
- Groovy y la Máquina Virtual de Java
- Groovy como lenguaje de scripting y programación
- Casos de uso comunes de Groovy
- Groovy en proyectos basados en Java
- Ventajas de usar Groovy junto con Java
- Resumen de la aplicación de ejemplo
Resumen de las características de Groovy
- Tipado dinámico y tipado estático opcional
- Capacidades de scripting en Groovy
- Sintaxis concisa y mejoras del lenguaje
- Closures y programación funcional
- Colecciones de Groovy y APIs mejoradas
- Sobrecarga de operadores
- Interpolación de cadenas
- Navegación segura y operador Elvis
- Desarrollo de Lenguajes de Propósito Específico (DSL)
- Capacidades de metaprogramación
- Kit de Desarrollo de Groovy (GDK)
Configuración del entorno de desarrollo
- Instalación y configuración de Groovy
- Trabajo con distribuciones de Groovy
- Uso de Groovy desde la línea de comandos
- Ejecución de scripts de Groovy
- Configuración de un IDE
- Creación de un proyecto de Groovy
- Gestión de dependencias
- Integración de Groovy con proyectos de Java
- Configuración del entorno de desarrollo para contenedores
Escribiendo su primera aplicación en Groovy
- Creación de un script básico de Groovy
- Comprensión de la estructura de un script de Groovy
- Ejecución de aplicaciones de Groovy
- Uso de la instrucción
println - Trabajo con variables
- Definición de métodos
- Agregación de comentarios y documentación
- Construcción de una simple aplicación de ejemplo
- Compilación de código Groovy
Conociendo la sintaxis de Groovy
- Enunciados y expresiones en Groovy
- Punto y coma y elementos sintácticos opcionales
- Variables y constantes
- Tipado dinámico y explícito
- Literales e interpolación de cadenas
- Cadenas de una sola línea y múltiples líneas
- Operadores y expresiones
- Operadores y atajos de Groovy
- Manejo de valores nulos
- Navegación segura
- Operador Elvis
- Asignación múltiple
Usando los tipos de datos y colecciones de Groovy
- Tipos primitivos y de objeto
- Números y operaciones numéricas
- Cadenas y caracteres
- Booleanos
- Valores relacionados con fechas y horas
- Listas
- Mapas
- Conjuntos
- Rangos
- Iteración sobre colecciones
- Transformaciones de colecciones
- Filtrado y búsqueda en colecciones
- Ordenamiento y agrupación de datos
- Métodos de colección de Groovy
Usando closures en Groovy
- Comprensión de closures
- Sintaxis de closures
- Parámetros de closures
- Parámetros implícitos de closures
- Llamado de closures
- Closures como variables
- Pasaje de closures a métodos
- Retorno de closures desde métodos
- Closures y colecciones
- Uso de closures para filtrado y transformación
- Alcance y captura de variables
- Closures para programación funcional
- Patrones prácticos de closures
Controlando el flujo del programa con estructuras de control de Groovy
- Enunciados condicionales
ifyelse- Condiciones anidadas
- Enunciados
switch - Bucles e iteración
for,whileydo-while- Rangos en bucles
- Uso de closures para iteración
breakycontinue- Manejo de excepciones
try,catchyfinally- Lanzamiento de excepciones personalizadas
- Características de flujo de control específicas de Groovy
Implementación de Programación Orientada a Objetos (POO) en su aplicación
- Definición de clases en Groovy
- Propiedades y campos
- Constructores
- Métodos
- Encapsulamiento
- Herencia
- Interfaces
- Clases abstractas
- Polimorfismo
- Sobrescritura de métodos
- Sobrecarga de métodos
- Getters y setters en Groovy
- Traits
- Enums
- Creación de modelos de dominio para la aplicación de ejemplo
Metaprogramación en tiempo de ejecución y de compilación
- Introducción a la metaprogramación en Groovy
- Invocación dinámica de métodos
- Objetos Expando
- Manipulación de métodos y propiedades en tiempo de ejecución
- Categorías y extensiones
- MetaClass
- Agregación dinámica de métodos
- Intercepción de llamadas a métodos
- Transformaciones en tiempo de compilación
- Transformaciones AST comunes
- Uso responsable de la metaprogramación
- Ejemplos prácticos de metaprogramación
Trabajo con constructores (Builders)
- Introducción al patrón de diseño Builder
- Constructores de Groovy y su propósito
- Creación de estructuras jerárquicas
- Constructores XML
- Constructores JSON
- Generación de HTML y marcado
- Configuración de la salida del constructor
- Uso de closures con constructores
- Creación de constructores personalizados
- Aplicación de constructores en Lenguajes de Propósito Específico
Acceso a una base de datos con Groovy
- Conceptos de conectividad de bases de datos
- Conexión de aplicaciones Groovy a bases de datos
- JDBC y APIs de base de datos de Groovy
- Configuración de conexiones a base de datos
- Ejecución de consultas SQL
- Lectura de resultados de consultas
- Insertar, actualizar y eliminar datos
- Consultas parametrizadas
- Transacciones
- Manejo de excepciones de base de datos
- Trabajo con Groovy SQL
- Construcción de funcionalidad de base de datos para la aplicación de ejemplo
Llamando a Java desde Groovy
- Interoperabilidad entre Groovy y Java
- Uso de clases de Java desde Groovy
- Llamado a métodos de Java
- Trabajo con librerías de Java
- Uso de colecciones de Java
- Manejo de excepciones de Java
- Comparación de la sintaxis de Groovy con la de Java
- Llamado a código Groovy desde Java
- Mezcla de archivos de origen Groovy y Java
- Integración de Groovy en aplicaciones existentes de Java
- Mejores prácticas de interoperabilidad
Conexión a servicios y aplicaciones REST
- Introducción a las APIs REST
- Conceptos de HTTP para aplicaciones Groovy
- Envío de solicitudes HTTP
- Manejo de operaciones GET, POST, PUT y DELETE
- Trabajo con parámetros y encabezados de solicitud
- Procesamiento de respuestas JSON
- Construcción de cuerpos de solicitud JSON
- Manejo de autenticación
- Manejo de errores HTTP
- Consumo de servicios REST externos
- Integración de funcionalidad REST en la aplicación de ejemplo
Trabajo con el GDK
- Introducción al Kit de Desarrollo de Groovy
- APIs mejoradas de Java
- Trabajo con cadenas
- Colecciones mejoradas
- Operaciones de archivos y directorios
- Lectura y escritura de archivos
- Trabajo con flujos (streams)
- Procesamiento de XML
- Procesamiento de JSON
- Trabajo con fechas y horas
- Métodos de utilidad y APIs de conveniencia
- Selección de funcionalidad adecuada del GDK
Pruebas unitarias de una aplicación de Groovy
- Introducción a las pruebas de aplicaciones Groovy
- Conceptos de desarrollo basado en pruebas
- Escritura de pruebas unitarias
- Uso de marcos de pruebas (frameworks)
- Estructuración de clases de prueba
- Aserciones
- Pruebas de clases y métodos
- Pruebas de closures
- Pruebas de excepciones
- Simulación de dependencias (mocking)
- Pruebas basadas en datos
- Pruebas de funcionalidad relacionada con bases de datos
- Pruebas de integraciones REST
- Ejecución y análisis de resultados de pruebas
Resolución de problemas
- Diagnóstico de errores de sintaxis de Groovy
- Depuración de errores en tiempo de ejecución
- Manejo de problemas de compilación
- Resolución de problemas de interoperabilidad con Java
- Depuración de closures y operaciones de colección
- Investigación de problemas de conectividad de bases de datos
- Resolución de problemas en integraciones de APIs REST
- Depuración del comportamiento de la metaprogramación
- Uso de registro y herramientas de diagnóstico
- Ejercicios prácticos de resolución de problemas
Resumen y conclusión
- Repaso de los fundamentos del lenguaje Groovy
- Repaso de sintaxis, tipos y colecciones
- Repaso de closures y programación funcional
- Repaso de la programación orientada a objetos
- Repaso de la metaprogramación y constructores
- Repaso de la integración con bases de datos y REST
- Repaso de la interoperabilidad entre Groovy y Java
- Repaso de las capacidades del GDK
- Repaso de las prácticas de pruebas
- Mejores prácticas para el desarrollo de aplicaciones Groovy
- Ejercicio práctico final
- Preguntas y discusión
Requerimientos
- Experiencia en programación con cualquier lenguaje
Reseñas (1)
La información adicional que se compartió fue que el entrenamiento no era Groovy de manera directa, lo cual fue agradable.
Covenant - Vodacom
Curso - Groovy Programming
Traducción Automática