
Curso de programación Rust
Dominá Rust desde los primeros principios hasta el despliegue en producción en un solo curso integral. Vas a conquistar ownership, concurrencia asincrónica, programación de sistemas y arquitectura de aplicaciones del mundo real. Cada concepto está fundamentado en código práctico que podés enviar a producción. Este es el curso definitivo de Rust para desarrolladores que quieren construir software rápido, seguro y confiable.
Lo que vas a aprender:
Vas a construir una base completa en la sintaxis, el sistema de tipos y las herramientas de Rust antes de avanzar hacia ownership, borrowing y lifetimes. A partir de ahí, vas a dominar traits, genéricos y el manejo idiomático de errores, para luego pasar a closures, iteradores y patrones de programación funcional. El curso cubre programación concurrente y asincrónica con Tokio, Rust inseguro y FFI, y diseño de aplicaciones con calidad de producción. Las pistas complementarias incluyen APIs web con Axum, desarrollo de herramientas CLI, WebAssembly y Rust embebido sin std. También vas a aplicar prácticas profesionales que incluyen testing, profiling, análisis estático y flujos de trabajo de colaboración en equipo.
Cómo estudias de forma práctica Curso de programación Rust
Cómo practicas Curso de programación 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.
Contenido del curso
8 Capítulos • 38 ClasesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesFundamentos de Rust y Configuración de la Toolchain
Fundamentos de Rust y Configuración de la Toolchain
Clase 1 • Tipos Compuestos y Colecciones
Presenta tuplas, arrays, structs y enums como contenedores de datos. Prepara a los estudiantes para modelar datos del mundo real antes de introducir el ownership.
Clase 2 • Instalación y Configuración de la Toolchain
Configurá Rust mediante rustup, gestioná las versiones de la toolchain y configurá editores. Establece la línea de base de desarrollo necesaria para todo el trabajo posterior.
Clase 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 tener proyectos organizados y con múltiples archivos desde el principio.
Clase 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.
Clase 5 • Flujo de Control y Funciones
Enseña if/else, loops, expresiones match y definiciones de funciones. Permite escribir lógica estructurada que se usa a lo largo de todo el curso.
Capítulo 2OcultarOcultar detallesVer detallesOwnership, Borrowing y Lifetimes
Ownership, Borrowing y Lifetimes
Clase 1 • Anotaciones de Lifetime
Presenta la sintaxis de lifetime, las reglas de elisión y los parámetros de lifetime en structs. Permite escribir funciones que devuelven referencias de forma segura.
Clase 2 • Punteros Inteligentes
Explora Box, Rc, Arc, RefCell y sus casos de uso. Extiende los patrones de ownership a escenarios de asignación en el heap y ownership compartido.
Clase 3 • Reglas de Ownership y Semántica de Movimiento
Define las tres reglas de ownership y explica la semántica de movimiento vs. copia. Forma el núcleo conceptual sobre el que se construye todo el razonamiento del borrow checker.
Clase 4 • Referencias y Borrowing
Cubre referencias compartidas y mutables, reglas de borrow y prevención de referencias colgantes. Permite pasar datos sin transferir el ownership.
Capítulo 3OcultarOcultar detallesVer detallesTraits, Generics y Dominio del Sistema de Tipos
Traits, Generics y Dominio del Sistema de Tipos
Clase 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.
Clase 2 • Funcionalidades Avanzadas del Sistema de Tipos
Presenta tipos asociados, const generics y el patrón newtype. Permite APIs precisas y expresivas que previenen el mal uso en tiempo de compilación.
Clase 3 • Definición e Implementación de Traits
Cubre definiciones de traits, métodos predeterminados e implementación de traits en tipos personalizados. Permite un comportamiento polimórfico central para el diseño idiomático en Rust.
Clase 4 • Trait Objects y Dynamic Dispatch
Explica dyn Trait, las reglas de object safety y las ventajas y desventajas del overhead de la vtable. Permite polimorfismo en tiempo de ejecución cuando el despacho estático no es suficiente.
Clase 5 • Funciones y Structs Genéricos
Enseña parámetros de tipo genérico, trait bounds y cláusulas where. Permite escribir algoritmos que funcionan con múltiples tipos concretos.
Capítulo 4OcultarOcultar detallesVer detallesManejo de Errores y Diseño de Código Robusto
Manejo de Errores y Diseño de Código Robusto
Clase 1 • Tipos de Error Personalizados
Explains implementing std::error::Error, enum-based errors, and error context. Produces descriptive, structured errors suitable for library and application code.
Clase 2 • Panics, Unwinding y Aserciones
Cubre panic!, assert!, catch_unwind y estrategias de abort vs. unwind. Clarifica cuándo los panics son aceptables y cómo contenerlos.
Clase 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.
Clase 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 5OcultarOcultar detallesVer detallesClosures, Iteradores y Patrones Funcionales
Closures, Iteradores y Patrones Funcionales
Clase 1 • Recolectar y Consumir Iteradores
Cubre collect, fold, reduce, sum y partition. Convierte cadenas lazy en resultados concretos y valores agregados.
Clase 2 • Iteradores Personalizados y Patrones Avanzados
Implementa Iterator en tipos personalizados y explora patrones estilo generador. Extiende la composición de iteradores a estructuras de datos de dominio específico.
Clase 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 lo largo del código.
Clase 4 • Adaptadores de Iteradores 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.
Clase 5 • El Trait Iterator y la Evaluación Lazy
Cubre el trait Iterator, next() y la semántica de evaluación lazy. Muestra cómo los iteradores se componen sin asignaciones intermedias.
Capítulo 6OcultarOcultar detallesVer detallesConcurrencia y Programación Async
Concurrencia y Programación Async
Clase 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.
Clase 2 • Patrones de Concurrencia y Errores Comunes
Examina deadlocks, inanición, cancelación async y concurrencia estructurada. Construye criterio para elegir el modelo de concurrencia adecuado para cada caso de uso.
Clase 3 • Paso de Mensajes con Canales
Enseña canales mpsc, patrones multi-productor y diseño de actores basado en canales. Proporciona una alternativa al estado compartido para la comunicación entre hilos.
Clase 4 • El Runtime Tokio en la Práctica
Cubre la configuración de Tokio, el lanzamiento de tareas, select! y primitivas de I/O async. Conecta la teoría async con el runtime de producción más utilizado.
Clase 5 • Fundamentos de Async/Await
Presenta el trait Future, las funciones async fn, la sintaxis .await y el modelo de ejecutor. Permite escribir código de I/O no bloqueante que se lee como código síncrono.
Capítulo 7OcultarOcultar detallesVer detallesProgramación de Sistemas y Rust Unsafe
Programación de Sistemas y Rust Unsafe
Clase 1 • Punteros Crudos y Bloques Unsafe
Cubre *const T, *mut T, reglas de desreferenciación y alcance de bloques unsafe. Establece el principio de huella mínima para código unsafe.
Clase 2 • Disposición de Memoria y Asignación
Explica los atributos repr, alineación, padding y la API del asignador global. Permite un control preciso sobre la disposición de datos para rendimiento y compatibilidad con FFI.
Clase 3 • Ensamblador Inline e Intrínsecos
Cubre la sintaxis de la macro asm!, restricciones de registro e intrínsecos SIMD. Permite optimizaciones a nivel de hardware donde la salida del compilador no es suficiente.
Clase 4 • Abstracciones Seguras sobre Código Unsafe
Demuestra cómo encapsular partes internas unsafe detrás de APIs públicas seguras. Produce componentes reutilizables y auditables que preservan las garantías de seguridad de Rust externamente.
Clase 5 • Interfaz de Funciones Externas (FFI)
Enseña bloques extern, vinculación ABI de C y diseño de wrappers seguros. Permite llamar a librerías C y exponer funciones de Rust a consumidores C.
Capítulo 8OcultarOcultar detallesVer detallesConstrucción de Aplicaciones Rust para Producción
Construcción de Aplicaciones Rust para Producción
Clase 1 • Configuración, Logging y Observabilidad
Presenta la gestión de configuración, el logging 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.
Clase 2 • Perfilado de Rendimiento y Optimización
Cubre benchmarks con criterion, flamegraphs, perfilado de asignación y sugerencias al compilador. Identifica y elimina cuellos de botella con técnicas basadas en datos.
Clase 3 • Empaquetado, Despliegue y Release
Cubre compilación cruzada, contenerización con Docker, reducción del tamaño del binario y perfiles de release. Produce artefactos desplegables optimizados para los entornos de destino.
Clase 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. Asegura que la corrección del código se verifique automáticamente con cada cambio.
Clase 5 • Arquitectura de Proyectos y Patrones de Diseño
Cubre arquitectura en capas, inyección de dependencias y el patrón typestate. Traduce el sistema de tipos de Rust en una estructura de aplicación escalable.
Tu certificado válido de finalización
Este curso es para ti:
Desarrolladores backend que quieren reemplazar lenguajes más lentos con Rust.
Programadores de sistemas que migran de C o C++ a herramientas modernas.
Programadores aficionados listos para abordar un lenguaje con garantías reales de rendimiento.
Ingenieros DevOps que buscan escribir herramientas internas confiables y de bajo overhead.
Estudiantes de ciencias de la computación que buscan una ventaja en entrevistas técnicas competitivas.
Personas que migran de entornos de scripting y apuntan a roles de software de alto rendimiento.
Lo que dicen nuestros estudiantes
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 por todo lo que hacen, ya los he recomendado a otras personas...

Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!

La plataforma es rápida, simple de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas Frecuentes
¿Quién es Dedika?
¿El certificado es válido en Chile?
¿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




















