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

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.

Dedika para empresas

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.

Haz clic aquí

Contenido del curso

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

Capítulo 1Ver detalles

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 2Ver detalles

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 3Ver detalles

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 4Ver detalles

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 5Ver detalles

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 6Ver detalles

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 7Ver detalles

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 8Ver detalles

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.

Certificación

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...
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 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