Skip to main content
LIVE
BTC $—| ETH $—| BNB $—| SOL $—| XRP $— · · · BITAIGEN · · · | | | | · · · BITAIGEN · · ·
Curso gratuito de Solidity y Smart Contracts con Python 2024

Curso gratuito de Solidity y Smart Contracts con Python 2024

Bitaigen Research Bitaigen Research 5 min de lectura

Aprende a desarrollar blockchain y smart contracts usando Solidity y Python con el curso gratuito de freeCodeCamp de Patrick Collins, más de 16 horas de contenido actualizado para 2024.

Title: Curso de Solidity, Blockchain y Smart Contracts – De Principiante a Experto con Python (2024)

El mundo de la Web3 está creciendo a pasos agigantados, y la demanda de desarrolladores que dominen Solidity y los entornos de despliegue en Python nunca ha sido tan alta. Uno de los recursos más completos y accesibles es el curso gratuito de freeCodeCamp.org creado por Patrick Collins, que combina teoría, práctica y proyectos reales en más de 16 horas de contenido. A continuación, desglosamos los puntos clave del programa en formato de lista, ampliamos cada tema con ejemplos y pasos concretos, y ofrecemos lecturas complementarias para que sigas profundizando.

1. Lista de puntos clave del curso

  • Fundamentos de Blockchain: conceptos de cadena de bloques, consenso (PoW/PoS) y primeras transacciones.
  • Introducción a Solidity: uso de Remix IDE, creación de contratos simples (Simple Storage, Fund Me).
  • Oráculos de Chainlink: cómo conectar contratos con datos externos de forma segura.
  • Web3.py: interacción programática con Ethereum desde Python.
  • Framework Brownie: entorno profesional para testear, compilar y desplegar contratos.
  • Proyecto de lotería descentralizada: implementación con Chainlink VRF para generar aleatoriedad verificable.
  • Tokens ERC‑20: creación y gestión de criptomonedas fungibles.
  • Finanzas descentralizadas (DeFi): integración con Aave para préstamos y préstamos programados.
  • Tokens no fungibles (ERC‑721): desarrollo de NFTs y su uso en aplicaciones reales.
  • Despliegue en testnet y mainnet: mejores prácticas y herramientas de auditoría.

2. Expansión de cada punto clave

2.1 Fundamentos de Blockchain

El curso inicia con una visión clara de qué es una blockchain y cómo funciona el consenso. Se explican los mecanismos de Proof of Work (PoW) y Proof of Stake (PoS), resaltando sus diferencias en consumo energético y velocidad de confirmación. Los estudiantes realizan su primer envío de Ether mediante Metamask y una red de prueba (Ropsten o Sepolia), lo que les permite observar en tiempo real la generación de bloques y la confirmación de transacciones.

2.2 Introducción a Solidity

Una vez entendido el ecosistema, el tutorial pasa a Solidity, el lenguaje de programación de contratos inteligentes de Ethereum. Utilizando Remix IDE, los alumnos crean su primer contrato llamado SimpleStorage, cuyo único propósito es almacenar y recuperar un número. Luego, se avanza a FundMe, un contrato que acepta donaciones y solo permite al propietario retirar los fondos, introduciendo conceptos de modificadores, eventos y manejo de errores.

2.3 Oráculos de Chainlink

Los contratos inteligentes no pueden acceder a datos externos por sí solos. Aquí entra Chainlink, una red de oráculos descentralizada. El curso muestra cómo integrar Chainlink Price Feeds para obtener precios de activos (por ejemplo, ETH/USD) y cómo usar Chainlink VRF (Verifiable Random Function) para generar números aleatorios seguros, indispensable para aplicaciones como loterías o juegos.

2.4 Web3.py

Pasar de la UI de Remix a la automatización con Python es un paso crucial. Con Web3.py, los estudiantes aprenden a crear scripts que:

  1. Conectan a una red Ethereum mediante un proveedor HTTP o WebSocket.
  2. Compilan contratos Solidity usando solc o brownie compile.
  3. Despliegan contratos mediante web3.eth.send_transaction.
  4. Interactúan con funciones del contrato (lectura y escritura) sin salir de Python.

2.5 Framework Brownie

Para proyectos más serios, Brownie se presenta como la alternativa a Truffle para desarrolladores Python. El entorno ofrece:

  • Gestión de dependencias con pip.
  • Testeo mediante pytest, donde se simulan transacciones y se verifican estados.
  • Scripts de despliegue (scripts/deploy.py) que automatizan la publicación en testnets.
  • Manejo de cuentas con claves privadas almacenadas de forma segura.

Los alumnos configuran un proyecto Brownie, crean carpetas contracts/, scripts/ y tests/, y ejecutan comandos como brownie run scripts/deploy.py --network sepolia.

2.6 Proyecto de lotería descentralizada

Uno de los proyectos estrella del curso es la lotería basada en Chainlink VRF. Los pasos resumidos son:

  1. Definir el contrato Lottery.sol con variables de estado para participantes y el ganador.
  2. Integrar el oráculo VRF solicitando un número aleatorio cuando se cierra la lotería.
  3. Utilizar fulfillRandomWords para seleccionar al ganador y transferir el balance del contrato.
  4. Implementar pruebas unitarias en tests/test_lottery.py para validar la aleatoriedad y la distribución de fondos.

Este ejercicio consolida el uso de oráculos, gestión de fondos y pruebas automatizadas.

2.7 Tokens ERC‑20

Los tokens fungibles son la base de la mayoría de los proyectos DeFi. El curso guía al estudiante a:

  • Escribir el contrato MyToken.sol siguiendo la ERC‑20 estándar (funciones totalSupply, balanceOf, transfer, approve, transferFrom).
  • Añadir minting y burning controlados por el propietario.
  • Desplegar el token en una testnet y verificar su existencia en Etherscan.
  • Interactuar con el token mediante Web3.py para consultar balances y realizar transferencias programáticas.

2.8 Finanzas descentralizadas (DeFi) con Aave

Para comprender cómo los tokens interactúan con protocolos de préstamo, el curso muestra la integración con Aave:

  1. Conectar a la pool de Aave usando la dirección del contrato LendingPoolAddressesProvider.
  2. Depositar el token ERC‑20 creado previamente como colateral.
  3. Realizar un préstamo de otro activo (por ejemplo, DAI) y luego reembolsar con intereses.
  4. Analizar los eventos emitidos (Deposit, Borrow, Repay) para crear un historial de operaciones.

2.9 Tokens no fungibles (ERC‑721)

Los NFTs ofrecen una forma de representar activos únicos. El módulo cubre:

  • Implementación de MyNFT.sol siguiendo la ERC‑721 y la extensión ERC‑721URIStorage para almacenar metadatos.
  • Minting de NFTs con URLs apuntando a imágenes alojadas en IPFS.
  • Creación de un mercado simple donde los usuarios pueden listar y comprar NFTs usando Ether.
  • Uso de Web3.py para listar los NFTs de una cuenta y consultar sus atributos.

2.10 Despliegue en testnet y mainnet

Finalmente, el curso ofrece una guía paso a paso para desplegar contratos en entornos reales:

  1. Configurar una wallet con fondos de prueba (usando faucets).
  2. Añadir la red deseada a brownie-config.yaml (por ejemplo, sepolia).
  3. Ejecutar brownie run scripts/deploy.py --network sepolia.
  4. Verificar el contrato en Etherscan y usar herramientas como Tenderly o MythX para auditorías de seguridad.
  5. Preparar una documentación de contrato (README, diagramas) antes de lanzar a mainnet.

3. Lecturas y recursos complementarios

  • Documentación oficial de Solidity: https://docs.soliditylang.org
  • Brownie Docs: https://eth-brownie.readthedocs.io
  • Web3.py Guide: https://web3py.readthedocs.io
  • Chainlink Docs (Oráculos y VRF): https://docs.chain.link
  • Aave Protocol Documentation: https://docs.aave.com
  • EIP‑721 (ERC‑721) Specification: https://eips.ethereum.org/EIPS/eip-721
  • OpenZeppelin Contracts Library (implementaciones seguras de ERC‑20 y ERC‑721): https://github.com/OpenZeppelin/openzeppelin-contracts

Estos enlaces permiten profundizar en cada tema abordado y actualizarse con las mejores prácticas de la comunidad.

Preguntas Frecuentes

Q1 ¿Necesito conocimientos previos de programación para seguir el curso?

No es obligatorio, pero contar con bases en Python y lógica de programación (variables, funciones, estructuras de control) facilita la comprensión de los conceptos de Solidity y de los scripts de despliegue.

Q2 ¿Puedo usar otro framework como Hardhat en lugar de Brownie?

Sí, el curso está centrado en Brownie porque está escrito en Python, pero los conceptos de pruebas, despliegue y gestión de contratos son transferibles a Hardhat, Truffle o Foundry. Solo necesitarás adaptar la sintaxis de los scripts.

Q3 ¿El curso cubre temas de seguridad y auditoría de contratos?

De forma introductoria, sí. Se presentan buenas prácticas (uso de OpenZeppelin, pruebas unitarias, revisión de eventos) y se recomienda usar herramientas externas como MythX, Slither o Foundry’s Forge para auditorías más exhaustivas antes de lanzar a mainnet.

Con este desglose, tienes una hoja de ruta clara para pasar de novato a desarrollador experto en Solidity y Python, aprovechando uno de los mejores recursos gratuitos disponibles hoy en la comunidad Web3. ¡Manos a la obra y que tus contratos sean seguros y eficientes!

Plataformas Recomendadas

Si buscas un exchange confiable para operar:

  • Binance — El exchange de criptomonedas más grande del mundo, con más de 350 pares de trading. Regístrate aquí con el código B2345 para descuentos en comisiones
  • OKX — Plataforma profesional de derivados y wallet Web3 integrado. Regístrate aquí con el código B2345 para beneficios de nuevo usuario
Regístrate en Binance – Máximo descuento邀请码 B2345 · Comisión spot desde 0.075%

Fuente: freeCodeCamp.org

Bitaigen Research
Sobre el autor
Bitaigen Research

El equipo editorial de Bitaigen cubre noticias blockchain, análisis de mercado y tutoriales de exchanges.

Únete a nuestro Telegram Discutir este artículo
Telegram →

Suscríbete a Bitaigen

Noticias cripto semanales y análisis de precio de Bitcoin en tu bandeja

🔒 Respetamos tu privacidad. Sin spam, nunca.

⚠️ Aviso de riesgo: Los precios de las criptomonedas son muy volátiles. Este artículo no es asesoramiento de inversión.