Punto del curso de Solidity: 5.1 Crear y desplegar contratos inteligentes
En este punto del curso, aprenderemos cómo crear y desplegar contratos inteligentes utilizando Solidity. Los contratos inteligentes son programas que se ejecutan en la cadena de bloques, y pueden ser utilizados para una variedad de aplicaciones descentralizadas. Este módulo cubrirá los aspectos teóricos y prácticos necesarios para desplegar tus propios contratos inteligentes.
Entorno de Desarrollo
Antes de comenzar, asegúrate de tener el entorno necesario para desarrollar contratos inteligentes:
- Node.js y npm (Node Package Manager)
- Truffle Suite para desarrollo y despliegue de contratos
- Ganache para una red de blockchain local
- Metamask como extension en tu navegador para interactuar con la blockchain
- Remix IDE para editar y compilar contratos Solidity (alternativamente puedes usar Visual Studio Code Solidity Plugin)
Creación de un Contrato Inteligente
Vamos a empezar creando un contrato sencillo llamado SimpleStorage
. Este contrato permitirá almacenar y recuperar un valor entero.
Código del contrato SimpleStorage:
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0 contract SimpleStorage { // Variable para almacenar un número uint256 private data // Función para establecer el valor de la variable function set(uint256 x) public { data = x } // Función para obtener el valor de la variable function get() public view returns (uint256) { return data } }
Este contrato tiene dos funciones públicas: set
y get
. La primera almacena un número entero, y la segunda lo devuelve.
Compilación del Contrato
Para compilar el contrato, puedes usar Remix IDE siguiendo estos pasos:
- Abre Remix IDE en tu navegador.
- Crea un nuevo archivo, llámalo
SimpleStorage.sol
, y pega el código anterior. - Selecciona la versión del compilador adecuada (en este caso, ^0.8.0).
- Haz clic en el botón de compilación.
Despliegue del Contrato
El despliegue del contrato se puede hacer de varias maneras, pero aquí utilizaremos Remix IDE debido a su simplicidad:
- En la sección Deploy Run Transactions de Remix, selecciona Injected Web3 para usar Metamask como proveedor de la red.
- Asegúrate de estar conectado a la red correcta en Metamask (por ejemplo, Ropsten, Rinkeby, o Kovan para pruebas).
- En Remix, selecciona el contrato
SimpleStorage
y haz clic en Deploy. - Confirma la transacción en Metamask.
Interacción con el Contrato
Después de desplegar el contrato, puedes interactuar con él directamente desde Remix:
- En la sección Deployed Contracts, deberías ver una instancia de tu contrato.
- Prueba la función
set
introduciendo un valor y ejecutando la transacción. Confirma en Metamask. - Prueba la función
get
para verificar que el valor se almacenó correctamente.
Conclusión
Crear y desplegar contratos inteligentes es una habilidad fundamental para cualquier desarrollador que desea trabajar con tecnología blockchain. A través de este ejemplo, hemos aprendido las funcionalidades esenciales y los pasos necesarios para llevar un contrato inteligente desde su creación hasta su despliegue y operación. Más adelante en el curso, exploraremos temas más avanzados como la gestión de tokens, contratos complejos, y técnicas de optimización.
Deja una respuesta