Elige tu idioma
Curso de programación en Rust
Más de 2 millones de estudiantes en todo el mundo

Curso de programación en Rust

Domina Rust desde los principios básicos hasta el despliegue en producción en un solo curso integral. Conquistarás la propiedad, la concurrencia asíncrona, la programación de sistemas y la arquitectura de aplicaciones del mundo real. Cada concepto se fundamenta en código práctico que puedes enviar a producción. Este es el curso definitivo de Rust para desarrolladores que quieren construir software rápido, seguro y confiable.

Dedika para empresas

Lo que vas a aprender:

Construirás una base completa en la sintaxis, el sistema de tipos y las herramientas de Rust antes de avanzar hacia propiedad, préstamo y tiempos de vida. A partir de ahí, dominarás traits, genéricos y manejo idiomático de errores, para luego adentrarte en cierres, iteradores y patrones de programación funcional. El curso cubre programación concurrente y asíncrona con Tokio, Rust inseguro y FFI, además de diseño de aplicaciones con calidad de producción. Las rutas complementarias incluyen APIs web con Axum, desarrollo de herramientas CLI, WebAssembly y Rust embebido sin std. También aplicarás prácticas profesionales como pruebas, perfilado, análisis estático y flujos de trabajo de colaboración en equipo.

Cómo estudias de forma práctica Curso de programación en Rust

Cómo practicas Curso de programación en Rust

Para ti que eres empresa y quieres capacitar a tu equipo

En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.

Haz clic aquí

Contenido del curso

8 Capítulos • 38 LeccionesDuración entre 4 y 360 horas (tú decides)

Capítulo 1Ver detalles

Fundamentos de Rust y Configuración del Toolchain

  • Lección 1 • Tipos Compuestos y Colecciones

    Presenta tuplas, arreglos, structs y enums como contenedores de datos. Prepara a los estudiantes para modelar datos del mundo real antes de introducir la propiedad.

  • Lección 2 • Instalación y Configuración del Toolchain

    Configura Rust mediante rustup, administra versiones del toolchain y configura editores. Establece la línea base de desarrollo necesaria para todo el trabajo posterior.

  • Lección 3 • Cargo y el Sistema de Módulos

    Explica los comandos de Cargo, la estructura de Cargo.toml y las reglas de visibilidad de módulos. Permite proyectos organizados y de múltiples archivos desde el principio.

  • Lección 4 • Sintaxis Básica y Tipos Primitivos

    Cubre variables, mutabilidad, tipos escalares y expresiones básicas. Proporciona la base sintáctica de la que depende cada capítulo posterior.

  • Lección 5 • Flujo de Control y Funciones

    Enseña if/else, bucles, expresiones match y definiciones de funciones. Permite escribir lógica estructurada utilizada a lo largo del curso.

Capítulo 2Ver detalles

Propiedad, Préstamo y Tiempos de Vida

  • Lección 1 • Anotaciones de Tiempos de Vida

    Introduce la sintaxis de tiempos de vida, las reglas de elisión y los parámetros de tiempo de vida en structs. Permite escribir funciones que devuelven referencias de forma segura.

  • Lección 2 • Punteros Inteligentes

    Explora Box, Rc, Arc, RefCell y sus casos de uso. Extiende los patrones de propiedad a escenarios de asignación en el heap y propiedad compartida.

  • Lección 3 • Reglas de Propiedad y Semántica de Movimiento

    Define las tres reglas de propiedad y explica la semántica de movimiento vs. copia. Forma el núcleo conceptual sobre el que se construye todo el razonamiento del verificador de préstamos.

  • Lección 4 • Referencias y Préstamo

    Cubre referencias compartidas y mutables, reglas de préstamo y prevención de referencias colgantes. Permite pasar datos sin transferir la propiedad.

Capítulo 3Ver detalles

Traits, Genéricos y Dominio del Sistema de Tipos

  • Lección 1 • Traits de la Biblioteca Estándar en Profundidad

    Cubre los traits Iterator, From/Into, Display y de sobrecarga de operadores. Integra tipos personalizados sin problemas con el ecosistema de la biblioteca estándar.

  • Lección 2 • Características Avanzadas del Sistema de Tipos

    Introduce tipos asociados, genéricos constantes y el patrón newtype. Permite APIs precisas y expresivas que previenen el uso incorrecto en tiempo de compilación.

  • Lección 3 • Definición e Implementación de Traits

    Cubre definiciones de traits, métodos predeterminados e implementación de traits en tipos personalizados. Permite el comportamiento polimórfico central para el diseño idiomático de Rust.

  • Lección 4 • Objetos Trait y Despacho Dinámico

    Explica dyn Trait, las reglas de seguridad de objetos y las ventajas y desventajas de la vtable. Permite el polimorfismo en tiempo de ejecución cuando el despacho estático es insuficiente.

  • Lección 5 • Funciones y Structs Genéricos

    Enseña parámetros de tipo genérico, límites de trait y cláusulas where. Permite escribir algoritmos que funcionan en múltiples tipos concretos.

Capítulo 4Ver detalles

Manejo de Errores y Diseño de Código Robusto

  • Lección 1 • Tipos de Error Personalizados

    Explica implementar std::error::Error, errores basados en enums y contexto de error. Produce errores descriptivos y estructurados adecuados para código de biblioteca y aplicación.

  • Lección 2 • Pánicos, Desenrollado y Aserciones

    Cubre panic!, assert!, catch_unwind y estrategias de aborto vs. desenrollado. Aclara cuándo los pánicos son aceptables y cómo contenerlos.

  • Lección 3 • Combinadores y el Operador ?

    Enseña map, and_then, unwrap_or y el operador de propagación ?. Permite cadenas de propagación de errores concisas y legibles en funciones reales.

  • Lección 4 • Fundamentos de Option y Result

    Cubre la semántica de Option<T> y Result<T, E>, los riesgos de unwrap y patrones de acceso seguro. Establece la base para todas las estrategias de manejo de errores del capítulo.

Capítulo 5Ver detalles

Closures, Iteradores y Patrones Funcionales

  • Lección 1 • Recolección y Consumo de Iteradores

    Cubre collect, fold, reduce, sum y partition. Convierte cadenas perezosas en resultados concretos y valores agregados.

  • Lección 2 • Iteradores Personalizados y Patrones Avanzados

    Implementa Iterator en tipos personalizados y explora patrones de estilo generador. Extiende la composición de iteradores a estructuras de datos de dominio específico.

  • Lección 3 • Closures y Modos de Captura

    Explica la sintaxis de closures, los traits Fn/FnMut/FnOnce y la captura por referencia vs. move. Permite pasar comportamiento como valores a través del código base.

  • Lección 4 • Adaptadores de Iterador Básicos

    Enseña map, filter, flat_map, zip, enumerate y take. Construye el vocabulario de adaptadores necesario para pipelines de procesamiento de datos reales.

  • Lección 5 • El Trait Iterator y la Evaluación Perezosa

    Cubre el trait Iterator, el método next() y la semántica de evaluación perezosa. Muestra cómo los iteradores se componen sin asignaciones intermedias.

Capítulo 6Ver detalles

Concurrencia y Programación Asíncrona

  • Lección 1 • Hilos y Estado Compartido

    Covers thread::spawn, join handles, Send/Sync traits, and Mutex-guarded state. Establishes safe multi-threading patterns enforced by the compiler.

  • Lección 2 • Patrones de Concurrencia y Trampas

    Examina bloqueos (deadlocks), inanición (starvation), cancelación asíncrona y concurrencia estructurada. Desarrolla el criterio para elegir el modelo de concurrencia correcto según el caso de uso.

  • Lección 3 • Paso de Mensajes con Canales

    Enseña canales mpsc, patrones de múltiples productores y diseño de actores basado en canales. Proporciona una alternativa al estado compartido para la comunicación entre hilos.

  • Lección 4 • El Runtime Tokio en la Práctica

    Cubre la configuración de Tokio, la creación de tareas, select! y las primitivas de E/S asíncrona. Conecta la teoría asíncrona con el runtime de producción más utilizado.

  • Lección 5 • Fundamentos de Async/Await

    Introduce el trait Future, async fn, la sintaxis .await y el modelo de ejecutor. Permite escribir código de E/S sin bloqueo que se lee como código síncrono.

Capítulo 7Ver detalles

Programación de Sistemas y Rust Inseguro

  • Lección 1 • Punteros Crudos y Bloques Inseguros

    Cubre *const T, *mut T, las reglas de desreferenciación y el alcance de los bloques inseguros. Establece el principio de huella mínima para el código inseguro.

  • Lección 2 • Diseño de Memoria y Asignación

    Explica los atributos repr, la alineación, el relleno (padding) y la API del asignador global. Permite un control preciso sobre el diseño de datos para rendimiento y compatibilidad con FFI.

  • Lección 3 • Ensamblador en Línea e Intrínsecos

    Cubre la sintaxis del macro asm!, las restricciones de registros y los intrínsecos SIMD. Permite optimizaciones a nivel de hardware cuando la salida del compilador es insuficiente.

  • Lección 4 • Abstracciones Seguras sobre Código Inseguro

    Demuestra la encapsulación de aspectos internos inseguros detrás de APIs públicas seguras. Produce componentes reutilizables y auditables que preservan las garantías de seguridad de Rust externamente.

  • Lección 5 • Interfaz de Función Extranjera (FFI)

    Enseña bloques extern, enlace ABI de C y diseño de envoltorios seguros. Permite llamar a bibliotecas de C y exponer funciones de Rust a consumidores de C.

Capítulo 8Ver detalles

Construcción de Aplicaciones Rust en Producción

  • Lección 1 • Configuración, Logging y Observabilidad

    Presenta la gestión de configuración, el registro estructurado con tracing y la emisión de métricas. Proporciona la visibilidad en tiempo de ejecución esencial para operar servicios en producción.

  • Lección 2 • Perfilado de Rendimiento y Optimización

    Cubre benchmarks con criterion, flamegraphs, perfilado de asignación y sugerencias del compilador. Identifica y elimina cuellos de botella con técnicas basadas en datos.

  • Lección 3 • Empaquetado, Despliegue y Release

    Cubre la compilación cruzada, la contenerización con Docker, la reducción del tamaño del binario y los perfiles de release. Produce artefactos desplegables optimizados para los entornos de destino.

  • Lección 4 • Estrategias de Pruebas e Integración de CI

    Enseña pruebas unitarias, pruebas de integración, pruebas basadas en propiedades y pipelines de CI. Garantiza que la corrección del código se verifique automáticamente en cada cambio.

  • Lección 5 • Arquitectura de Proyectos y Patrones de Diseño

    Cubre la arquitectura en capas, la inyección de dependencias y el patrón de estado tipado (typestate). Traduce el sistema de tipos de Rust en una estructura de aplicación escalable.

Certificación

Tu certificado válido de finalización

Este curso es para ti:

  • Desarrolladores de backend que desean reemplazar lenguajes más lentos con Rust.

  • Programadores de sistemas que transicionan de C o C++ a herramientas modernas.

  • Programadores aficionados listos para enfrentar un lenguaje con garantías reales de rendimiento.

  • Ingenieros DevOps que buscan escribir herramientas internas confiables y de baja sobrecarga.

  • Estudiantes de ciencias de la computación que buscan una ventaja en entrevistas técnicas competitivas.

  • Personas que cambian de carrera desde entornos de scripting y aspiran a roles de software de alto rendimiento.

Lo que dicen nuestros alumnos

Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... agradezco todo lo que hacen, ya los he recomendado a otras personas...
Giulio Carlo
Giulio CarloEstudiante de Marketing Digital
Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.
Mariana Ferres
Mariana FerresEstudiante de Fotografía
Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!
Luciana Alvarenga
Luciana AlvarengaEstudiante de Diseño de Uñas
La plataforma es rápida, simple de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.
André Felipe
André FelipeEstudiante de Ingeniería de Prompt

Principales capacitaciones

Preguntas frecuentes

¿Quién es Dedika?

¿El certificado es válido en México?

¿Los cursos son gratuitos?

¿Cuál es la carga horaria del curso?

¿Cómo son los cursos?

¿Cómo funcionan los cursos?

¿Cuál es la duración de los cursos?

¿Cuál es el costo o precio de los cursos?

¿Qué es un curso EAD u online y cómo funciona?

Curso en PDF