Existen diversos entornos de desarrollo que te permitirán tanto desarrollar como interactuar con contratos inteligentes. Uno de los primeros que todo desarrollador blockchain tiene que conocer, es Remix IDE.
Desarrollo y despliegue de contratos inteligentes
Remix IDE es un excelente entorno de desarrollo blockchain para realizar todo tipo de acciones sobre redes basadas en EVM. Se trata de un entorno web al cual podrás acceder con cualquier navegador. Desarrollado y mantenido por la Ethereum Foundation y toda su comunidad.
Ideal para dar tus primeros pasos, aprender, hacer pruebas de despliegues de contratos e interactuar con los mismos. Remix es muy útil para hacer demostraciones de código o hasta incluso para desarrollos profesionales, aunque para esto último conocerás mejores herramientas.
Conociendo Remix IDE
Al ingresar al entorno de desarrollo, te encontrarás con una típica interfaz de usuario. Como la de cualquier software para escribir código como VS Code.
Podrás crear tantos contratos como desees y agruparlos en workspace o espacios de trabajo. Verás algunos contratos de prueba con los cuales puedes comenzar a interactuar. Si deseas escribir tu propio contrato, crea un nuevo archivo con la extensión .sol
y podrás editarlo del lado derecho del IDE.
Despliegue de tu primer contrato
Remix trae consigo herramientas para la visualización temprana y de forma clara de errores. No podrás compilar tus contratos si los errores son críticos, lo cual te ayudará a hacer mejor tu trabajo como desarrollador. Recuerda que Solidity es un lenguaje fuertemente tipado y estricto.
```
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.8.1 <0.8.19;
contract Counter {
uint counter;
constructor(uint _counter) {
counter = _counter;
}
function getCounter() public view returns (uint) {
return counter;
}
function increment() public {
counter++;
}
}
```
En las opciones de la izquierda de Remix, encontrarás las opciones para compilar y luego desplegar tus contratos. En este contrato de ejemplo que estamos utilizando, el mismo posee un parámetro en su constructor que será ejecutado cuando el contrato se despliegue.
Al momento de desplegar el contrato, podrás completar cada parámetro con el valor necesario. Cuando tu contrato esté listo, has clic en "Deploy" y en cuestión de segundos estará disponible para interactuar con él.
Interactuando con tu primer contrato
Estando en la pestaña de despliegues de Remix, una vez hayas desplegado algún contrato, observarás los mismos y podrás interactuar con ellos. Cada función pública y accesible desde afuera que hayas escrito en el contrato, la encontrarás aquí para invocarlas con un simple clic.
Despliegue en una red de prueba
Por defecto, los contratos en Remix se despliegan en una blockchain virtual, única para ti. Podrás observar múltiples wallets con 100 Ether cada una, para jugar y aprender a desarrollar en blockchain. No necesitas tu propia wallet.
Remix también permite desplegar contratos en blockchain de pruebas, incluso en la mainnet de Ethereum. Para esto, deberás configurar el environment de desarrollo como Injected Provider - Metamask
, para que la wallet sea la encargada de determinar en qué blockchain se desplegará el contrato.
Si posees algo de fondos en redes de prueba como Goerli, obtenidos previamente desde un faucet de Goerli, podrás observar tus fondos y desplegar cualquier contrato en esta red pública. Recuerda realizar el cambio de red en tu Metamask para que Remix reconozca dónde quieres desplegar el contrato.
La principal diferencia entre utilizar el entorno virtual de Remix o una blockchain de pruebas, es la necesidad de aprobar las transacciones con tu wallet. Cuando desees interactuar con la blockchain, verás que Metamask se despliega y tendrás que aprobar la transacción.
Podrás observar el costo de la transacción más el costo de la transacción. De esta manera, has logrado desplegar tu primer contrato en una red de prueba e interactuado con el mismo.
Conclusión
Entornos como Remix serán claves para ti para convertirte en un desarrollador blockchain. Aprender a utilizarlo es importante y te permitirá, en pocos pasos, ya estar interactuando con una blockchain.
Existen otro tipo de entornos de desarrollo más profesionales que verás en próximas clases. Sin embargo, todo desarrollador Ethereum debe conocer Remix.
Contribución creada por: Kevin Fiorentino (Platzi Contributor).
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?