Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo de facilitaremos un enlace para verlo en diferido
logoImagina
iconoCurso

Curso completo de Ruby Avanzado

DISPONIBLE EN MODALIDAD:
Aprende conceptos avanzados de Ruby. Aprenderás a dominar tanto la programación orientada a objetos como la programación funcional, explorarás técnicas de seguridad en aplicaciones web y te convertirás en un experto en la gestión de dependencias y el rendimiento. Además, tendrás la oportunidad de aplicar tus conocimientos en un proyecto final, desarrollando una aplicación avanzada en Ruby.
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient
Formación en Ruby Avanzado bonificable para empresas

¿A quién va dirigido?

Desarrolladores con experiencia en Ruby y desean llevar sus habilidades al siguiente nivel, así como para aquellos que desean explorar aspectos avanzados de Ruby y su aplicación en el desarrollo web, la seguridad y la gestión de dependencias.

Objetivos

  • Aprender las características avanzadas y trucos de Ruby, incluyendo el uso de expresiones regulares y reflexión, para convertirse en un desarrollador Ruby altamente competente.
  • Profundizar en la programación orientada a objetos y funcional en Ruby, incluyendo la herencia avanzada, la metaprogramación y el desarrollo impulsado por pruebas (TDD).
  • Aprender a gestionar gemas y bibliotecas de manera avanzada, así como a optimizar y mejorar el rendimiento de las aplicaciones Ruby.
  • Explorar la arquitectura avanzada de aplicaciones web en Ruby y aprender sobre autenticación, autorización y seguridad en aplicaciones web.
  • Aplicar todos los conocimientos adquiridos para desarrollar una aplicación avanzada en Ruby, desde la planificación hasta el despliegue.

¿Qué vas a aprender?

Aprende conceptos avanzados de Ruby. Aprenderás a dominar tanto la programación orientada a objetos como la programación funcional, explorarás técnicas de seguridad en aplicaciones web y te convertirás en un experto en la gestión de dependencias y el rendimiento. Además, tendrás la oportunidad de aplicar tus conocimientos en un proyecto final, desarrollando una aplicación avanzada en Ruby.

Requisitos

  • Tener experiencia con los fundamentos y haber desarrollado previamente con Ruby o haber realizado el curso de Ruby de Imagina Formación
  • Tener Ruby (LTS o superior), Visual Studio Code y Docker Desktop instalados previamente en el equipo
  • Tener un equipo con acceso a un usuario con permisos de instalación y conexión estable a Internet

Temario del curso

tema 1

Repaso fundamentos y profundización en conceptos Ruby

  • repaso de fundamentos de Ruby
  • Características avanzadas de Ruby
  • Versiones y actualizaciones de Ruby
  • Trucos y consejos en Ruby
  • Exploración avanzada de la consola irb
  • Convenciones de estilo avanzadas en Ruby
  • Metaprogramación y reflexión en Ruby
  • Expresiones regulares avanzadas
tema 2

Programación Orientada a Objetos Avanzada en Ruby

  • Herencia avanzada y mixins
  • Métodos avanzados y definición dinámica
  • Clases y objetos singleton
  • Uso avanzado de módulos y namespaces
  • Composición y delegación de objetos
  • Introspección y atributos virtuales
  • Closures y bloques avanzados en Ruby
  • Refactorización y diseño avanzado
tema 3

Programación Funcional Avanzada en Ruby

  • Funciones de orden superior avanzadas
  • Funciones lambda, procs y objetos callable
  • Composición de funciones avanzada
  • Mónadas y programación funcional pura
  • Efectos secundarios y monads de estado
  • Funciones recursivas avanzadas
  • Inmutabilidad y persistencia funcional
  • Concurrencia y paralelismo en programación funcional
tema 4

Gestión Avanzada de Dependencias y Gemas

  • Resolución de conflictos y versiones de gemas
  • Desarrollo y mantenimiento de gemas personalizadas
  • Pruebas avanzadas de gemas y bibliotecas
  • Uso de herramientas de verificación de seguridad
  • Integración continua y automatización en Ruby
  • Exploración avanzada de Bundler
  • Patrones de diseño en gemas Ruby
  • Publicación y distribución avanzada de gemas
tema 5

Programación Asíncrona en Ruby: Concurrencia, Hilos y Paralelismo

  • Uso avanzado de hilos nativos en Ruby
  • Programación concurrente y paralela en Ruby
  • Sincronización avanzada y mecanismos de bloqueo
  • Comunicación entre hilos y gestión de recursos compartidos
  • Patrones de diseño para aplicaciones concurrentes
  • Uso de bloques y procs en programación asíncrona
  • Event-driven programming y gestión de eventos
  • Implementación avanzada de promesas y callbacks
  • Consejos para la implementación de patrones de concurrencia y paralelismo
  • Uso avanzado de la gema 'async'
  • Pruebas y depuración de aplicaciones asíncrona
  • Ejemplos avanzados de aplicaciones asíncrona
tema 6

Desarrollo Web Avanzado en Ruby

  • Middleware y Rack en aplicaciones web Ruby
  • Arquitectura avanzada de aplicaciones web
  • Rutas y controladores avanzados
  • Autenticación y autorización avanzada
  • Plantillas avanzadas y motores de vistas
  • Bases de datos y migraciones en profundidad
  • APIs RESTful avanzadas con Ruby
  • Despliegue avanzado de aplicaciones web
tema 7

Integración de Bibliotecas y Frameworks Avanzados

  • Evaluación y selección de bibliotecas avanzadas
  • Integración de bibliotecas de terceros
  • Personalización y extensión de funcionalidades
  • Pruebas avanzadas de integración y compatibilidad
  • Evaluación de rendimiento y seguridad
  • Ejemplos de aplicaciones que utilizan frameworks avanzados
  • Mantenimiento y actualización de bibliotecas avanzadas
tema 8

Integración de Sistemas y Servicios Externos en Ruby

  • Integración con Servicios de Terceros en Ruby
  • Integración de servicios como redes sociales, servicios de pago, etc.
  • Uso de bibliotecas y gemas de terceros para simplificar la integración
  • Manejo de errores y recuperación de fallos en la integración
  • Webhooks y Automatización de Procesos
  • Creación y gestión de endpoints de webhook en aplicaciones Ruby
  • Procesamiento de eventos y notificaciones entrantes
  • Automatización de flujos de trabajo con webhooks
tema 9

Autenticación y Autorización Avanzada en Ruby

  • Autenticación de dos factores y OAuth
  • Encriptación y gestión avanzada de contraseñas
  • Autorización basada en roles y permisos avanzados
tema 10

Consejos de Seguridad en aplicaciones Ruby

  • Prevención de ataques comunes, como inyección de SQL
  • Escaneo de vulnerabilidades y auditoría avanzada de seguridad
  • Pruebas de seguridad y análisis de vulnerabilidades
  • Codificación segura y buenas prácticas
tema 11

Optimización y Mejoras de Rendimiento en Ruby

  • Optimización y ajuste de rendimiento
  • Estrategias de almacenamiento en caché
  • Monitorización y perfilado avanzado
  • Escalabilidad y alta disponibilidad
  • Técnicas de paralelismo y concurrencia avanzadas
  • Auditoría de código y revisión de seguridad
  • Respuesta a incidentes de seguridad en Ruby
  • Consejos para el ajuste avanzado de servidores web y bases de datos
tema 12

Mantenimiento y Extensibilidad de Aplicaciones

  • Técnicas avanzadas de refactorización
  • Pruebas unitarias avanzadas y pruebas de regresión
  • Mantenimiento preventivo y correctivo
  • Versionado avanzado y gestión de cambios
  • Diseño de API y arquitectura para la extensibilidad
tema 13

Arquitectura de Microservicios y Contenedores en aplicaciones Ruby

  • Arquitectura de microservicios y contenedores
  • Patrones de diseño avanzados de software
  • Uso de bases de datos NoSQL y Big Data en Ruby
  • Arquitectura de aplicaciones en tiempo real
  • Escalabilidad horizontal
tema 14

Gestión de Tareas y Automatización en Ruby

  • Introducción a Rake
  • Cómo se utiliza Rake en un proyecto Ruby
  • Creación de tareas Rake simples
  • Ejecución de tareas desde la línea de comandos
  • Desarrollo de tareas personalizadas para automatizar tareas específicas
  • Uso de dependencias entre tareas.
  • Pasar argumentos y opciones a las tareas.
  • Introducción a la automatización de Flujos de Trabajo de Desarrollo
  • Creación de flujos de trabajo automatizados para pruebas, compilación y despliegue
  • Integración de Rake con sistemas de construcción y CI/CD
  • Ejemplos de flujos de trabajo comunes en desarrollo Ruby.
tema 15

Uso Avanzado de Bases de Datos en Ruby con ORMs

  • Diseño de modelos de datos complejos
  • Relaciones avanzadas entre tablas
  • Consideraciones de rendimiento y escalabilidad
  • Optimización de consultas SQL para mejorar el rendimiento
  • Uso de índices y claves ajenas
  • Estrategias de denormalización
  • Introducción a bases de datos NoSQL
  • Uso de bases de datos clave-valor, documentos y columnares
  • Integración de bases de datos NoSQL en aplicaciones Ruby
tema 16

Programación Orientada a Pruebas (TDD) en Ruby

  • Introducción a la metodología TDD
  • Fundamentos del desarrollo impulsado por pruebas (TDD)
  • Ciclo TDD: Red-Green-Refactor
  • Ventajas de TDD en el desarrollo Ruby
  • Introducción a Frameworks de Pruebas en Ruby: RSpec y Minitest
  • Escritura de pruebas en RSpec
  • Escritura de pruebas en MiniTest
  • Estructura y organización de pruebas
  • Pruebas de unidad, pruebas de integración y pruebas de aceptación
  • Mocks, stubs y fakes para pruebas aisladas
  • Pruebas end-to-end y pruebas de carga
tema 17

Trabajando con Contenedores y Orquestación con Docker

  • Introducción a la Gestión de Contenedores Docker para proyectos Ruby
  • Creación de imágenes Docker personalizadas
  • Uso de Docker Compose para administrar aplicaciones con múltiples contenedores
  • Almacenamiento de datos en contenedores
  • Despliegue de Aplicaciones Ruby en Contenedores
  • Configuración de redes y volúmenes para aplicaciones en contenedores
  • Gestión de ciclos de vida de contenedores
tema 18

Migración y Actualización de Aplicaciones Legacy de Ruby

  • Introducción a las estrategias de migración de aplicaciones heredadas
  • Evaluación de aplicaciones heredadas.
  • Planificación de migración y estrategias de refactorización.
  • Abordar problemas de obsolescencia.
  • Introducción a la modernización de código y datos
  • Actualización de lenguaje y bibliotecas.
  • Migración de bases de datos y datos legados.
  • Consejos para pruebas y validación de la aplicación modernizada.
  • Consejos para pruebas de regresión y validación de la funcionalidad existente
  • Mitigación de riesgos durante la migración
  • Consideraciones de seguridad en la modernización de aplicaciones
tema 19

Breve Introducción al Desarrollo de Aplicaciones Móviles con Ruby (RubyMotion)

  • Introducción al desarrollo de Aplicaciones Móviles con RubyMotion
  • Creación de aplicaciones móviles nativas para iOS y Android
  • Uso de Ruby para el desarrollo móvil
  • Ventajas y desafíos del desarrollo móvil en Ruby
  • Diseño de interfaces de usuario móviles atractivas
  • Uso de elementos de interfaz táctil
  • Introducción a los gestos y animaciones
  • Proceso de compilación y despliegue en la App Store de Apple
  • Despliegue en Google Play Store
  • Consejos para la actualización de aplicaciones móviles desplegadas
  • Lecturas a partir de aquí
tema 20

Breve Introducción a Soluciones con Ruby: El Desarrollo de Juegos con Ruby y LibGDX

  • Introducción a la creación de Juegos 2D y 3D con Ruby y LibGDX
  • Diseño y desarrollo de juegos multimedia
  • Gráficos en 2D y 3D
  • Introducción a la física y simulación de juegos
  • Implementación de efectos de sonido y música
  • Uso de librerías para sonido en juegos
  • Integración de audio interactivo en juegos
  • Lecturas a partir de aquí
tema 21

Breve Introducción a Soluciones con Ruby: Machine Learning e Inteligencia Artificial con Ruby

  • Introducción a bibliotecas como TensorFlow y Scikit-learn para Ruby
  • Creación y entrenamiento de modelos de aprendizaje automático en Ruby
  • Casos de uso comunes de ML en Ruby
  • Introducción al diseño y entrenamiento de modelos de inteligencia artificial
  • Uso de datos de entrenamiento y validación
  • Evaluación de modelos y ajuste de hiperparámetros
tema 22

Proyecto Final: Desarrollo de una Aplicación Avanzada en Ruby

  • Descripción del Proyecto
  • Definición del Proyecto
  • Diseño y Planificación
  • Implementación
  • Pruebas y Depuración
  • Documentación Técnica
  • Despliegue y Demostración
  • Evaluación y Revisión
  • Consejos y siguientes pasos a partir de este curso

Curso de Ruby Avanzado bonificado para Empresas a través de FUNDAE

Somos entidad organizadora de FUNDAE, todas nuestras formaciones se pueden bonificar hasta el 100%, sujeto a vuestro crédito disponible y a cumplir con todos los requisitos de realización establecidos por la Fundación Estatal para el Empleo.

 

Si desconoces el funcionamiento de las bonificaciones, ofrecemos el servicio de gestión en FUNDAE, consúltanos cualquier duda que te surja.

Descargar Guía FUNDAE
imagenFundae
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient