Contenido del curso
Your first Sway project
Types and Standard Library
Writing your contract
- 8

Desarrollo de Contratos Inteligentes en Sway: Mercado Online Intermedio
16:08 min - 9

Implementación de funciones en contratos inteligentes Sway
09:49 min - 10

Implementación de la Función buyItem en Sway para Compra de Artículos
15:47 min - 11

Funciones de Propietario en Contratos Inteligentes Sway
09:06 min - 12

Función get_item en tu contrato Sway
02:20 min
Deploying your contract
Frontend
Qué es Sway y por qué nació para blockchain
Resumen
Sway es un lenguaje de programación para smart contracts basado en Rust, creado por Fuel Labs para llevar la seguridad y el rendimiento de Rust al desarrollo blockchain. Si vienes de Solidity, JavaScript o Rust, vas a encontrar en Sway un punto medio familiar y potente para escribir contratos seguros sobre Fuel.
¿Qué es Sway y por qué nació como DSL basado en Rust?
Sway es un Rust-based smart contract programming language, es decir, un Domain Specific Language (DSL) pensado exclusivamente para blockchain. Fuel Labs lo creó porque, en su momento, no existía un lenguaje basado en Rust que avanzara lo suficientemente rápido ni con la calidad necesaria para escribir contratos inteligentes [01:30].
La decisión de construir un DSL en lugar de usar Rust directamente responde a una limitación clara: Rust es un lenguaje de propósito general y no incluye las primitivas de blockchain que necesitas para desarrollar smart contracts. Otros ecosistemas que sí permiten escribir Rust puro te obligan a depender de SDKs y workarounds específicos para acceder a tipos propios de blockchain.
¿Qué es un DSL en blockchain? Es un lenguaje creado específicamente para un dominio. En el caso de Sway, está diseñado para escribir smart contracts e incluye de fábrica los tipos y primitivas que la cadena necesita.
¿Por qué los desarrolladores eligen Sway frente a Solidity o Rust puro?
La frase que mejor lo resume es esta: el compilador es tu amigo. Suena a chiste, pero en Sway el compilador te regaña y al mismo tiempo te toma de la mano. Te muestra mensajes de error muy específicos, te sugiere cómo corregirlos y, en tiempo de compilación, te obliga a manejar casos que en otros lenguajes pasarían desapercibidos.
Un ejemplo concreto es el reentrancy guard. La reentrada es uno de los ataques más comunes en blockchain, y en Sway el compilador lo bloquea por diseño. No es algo que tengas que recordar implementar: el lenguaje te protege.
Otras razones por las que Sway gusta tanto:
- Te ayuda a escribir código seguro gracias a la seguridad de tipos heredada de Rust.
- Se siente como si Rust y Solidity hubieran tenido un bebé, mezclando type safety con la familiaridad de Solidity.
- Es accesible incluso si no vienes de Rust. Funciona bien para perfiles de JavaScript o Solidity.
¿Necesito saber Rust para aprender Sway? No. Si vienes de JavaScript o Solidity, la sintaxis te resultará familiar y no se siente intimidante al empezar.
¿Qué es Fuel y cómo se relaciona con Sway?
Fuel es una modular execution layer, una capa de ejecución modular. Si conoces el ecosistema de Ethereum, la forma más rápida de entenderlo es pensar en Fuel como un layer 2, pero mejor [05:50]. Se desplegará como un rollup sobre Ethereum, igual que otros rollups, pero con una diferencia clave: no está fuertemente acoplado a Ethereum.
Mientras que otros rollups reutilizan la EVM y Solidity, Fuel decidió construir su propio lenguaje y su propia máquina virtual. Esto les permitió evitar la deuda técnica de mantener compatibilidad hacia atrás y abrir espacio para innovaciones como la ejecución paralela de transacciones y un modelo UTXO.
En su forma más simple, Fuel es una blockchain como cualquier otra. Los términos rollup o Layer 2 describen su configuración y su relación con otras cadenas, no su naturaleza.
¿Cuál es la diferencia entre Fuel, Fuel VM y Forc?
Para seguir el curso sin confusiones, conviene tener claros tres términos que vas a escuchar todo el tiempo [08:30]:
- Fuel: la blockchain de Fuel.
- Fuel VM: la máquina virtual que ejecuta Fuel, equivalente a la EVM en Ethereum.
- Forc: el build system y gestor de paquetes de Sway, equivalente a Cargo en Rust o a npm en JavaScript. Lo usarás en la línea de comandos para compilar, gestionar dependencias y ejecutar tareas propias del proyecto.
¿Qué vas a aprender en este curso de Sway?
El recorrido cubre desde la escritura de smart contracts hasta el desarrollo de aplicaciones front-end que se conectan a ellos. También vas a entender por qué tiene sentido usar un DSL en lugar de un lenguaje de propósito general, algo que te dará criterio al elegir herramientas en cualquier proyecto blockchain.
La instructora, Camila Ramos, lidera developer relations en Fuel Labs. Tiene años enseñando ciencias de la computación de K a 12 y experiencia como ingeniera de software antes de moverse a devrel. El curso se dicta en inglés por precisión técnica, y puedes activar los subtítulos de Platzi en español si lo prefieres.
Aprender un lenguaje nuevo es una tarea exigente incluso para desarrolladores senior. Vas a tener dudas, momentos de confusión y preguntas. Todo eso es parte del proceso, así que aprovecha el sistema de preguntas en español o inglés mientras avanzas.
En la siguiente clase entramos de lleno a los fundamentos de Sway: tipos de datos, primitivas y los bloques básicos que necesitas para empezar a escribir tu primer contrato. ¿Qué es lo que más te llama la atención de Sway hasta ahora? Déjalo en los comentarios.