Programación Concurrente En Rust

SKU SOFT-716

Sin existencias

Sin existencias

El curso Programación Concurrente en Rust está diseñado para enseñar a desarrollar aplicaciones concurrentes eficientes, utilizando hilos, canales y estructuras de sincronización en Rust.

Rutas de Aprendizaje relacionadas

Descripción del curso

El curso, está diseñado para que los participantes comprendan y apliquen técnicas de programación concurrente, un aspecto esencial para el desarrollo de aplicaciones modernas y de alto rendimiento. En este módulo, los estudiantes explorarán la diferencia entre concurrencia y paralelismo, aprendiendo a crear y manejar hilos con la biblioteca estándar de Rust. También abordarán el uso de herramientas como canales y las estructuras Arc y Mutex para gestionar el estado compartido de manera segura. Además, se profundizará en la implementación de traits con lifetimes para asegurar la gestión correcta de la memoria en aplicaciones concurrentes. Al finalizar el módulo, los participantes habrán adquirido las habilidades necesarias para desarrollar programas concurrentes eficientes y robustos, aplicando prácticas seguras y modernas que maximizan el rendimiento y la seguridad en Rust.

Contenidos

1. Introducción a la concurrencia.

2. Patrones avanzados de concurrencia.

3. Concurrencia segura con lifetimes y traits.

4. Estudio de caso: Implementación de un servidor multihilo.


Metodología de Aprendizaje

La educación actual suele limitar a estudiantes, forzándoles a absorber contenidos en lugar de fomentar la solución colectiva de problemas. En CENFOTEC, buscamos modificar este enfoque mediante nuestra metodología de aprendizaje constructivista llamada 40-40-20.

La técnica 40-40-20 divide el tiempo de clase: 40% el profesor da un charla para inducir al pensamiento autónomo basado en conceptos clave; el siguiente 40% para resolver retos individuales o en grupo, que exigen exploración, donde el docente es un facilitador; y el 20% restante para una discusión guiada por el profesorado. Para mantener la atención, consideramos 1 hora lectiva como 50 minutos, especialmente en cursos de 3-4 horas.

Adicionalmente el estudiante deberá dedicar una cantidad de horas adicionales para completar retos extraclase que el profesor le asigne.


Metodología XperiencEd™

Nuestra metodología de aprendizaje, un pilar clave de Credentials as you Grow

Experiencia educativa con un enfoque 20% teoría, 60% práctica y 20% reflexión.

Integra estrategias de aprendizaje activas y experiencias prácticas para potenciar el desarrollo de habilidades técnicas y power skills.

Promueve un aprendizaje vivencial, donde la resolución de problemas en escenarios reales y la aplicación inmediata del conocimiento en entornos empresariales fortalecen la formación profesional.

Información adicional

Fecha de inicio

Horario

Profesor

Área de formación

Ingeniería del software

Modalidad

Virtual en Vivo

Duración

16 horas

Nivel de complejidad

Intermedio.

Perfil de ingreso

El estudiante debe tener un conocimiento sólido de los fundamentos de Rust, incluyendo sintaxis básica, control de flujo, y estructuras de datos como structs y enums. Es esencial comprender los conceptos de ownership y borrowing, así como el manejo de referencias y lifetimes, ya que estos son cruciales para trabajar con seguridad en la concurrencia. También se espera que el estudiante tenga experiencia con la modularización del código y la implementación de traits, habilidades adquiridas en módulos anteriores. Una comprensión básica de la programación multihilo en otros lenguajes puede ser beneficiosa para asimilar más fácilmente los conceptos concurrentes en Rust.

Perfil de salida

Desarrollador de software concurrente, ingeniero de programación multihilo, implementador de sistemas de sincronización de datos, desarrollador de aplicaciones de alto rendimiento, especialista en manejo seguro de estado compartido, colaborador en proyectos de infraestructura concurrente.