No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

RemixIDE

15/27
Recursos

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.

Remix - Explorador de archivos.png

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.

Remix - Deploy.png

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.

Remix - Interactuando con un contrato.png

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.

Remix - Despliegue en Goerli.png

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.

Interacción - Metamask y Goerli.png

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

Aportes 11

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

  1. La Licencia
  2. La versión
  3. Indicamos que vamos a escribir un smart contract, por eso, usamos “contract” al lado el nombre del documento, en este caso “counter”, porque así se guardamos el documento en en file explorer, y aquí dentro de este, es en donde vamos a escribir las propiedades de nuestro contrato.
  4. Después de escribir las funciones o propiedades de nuestro contrato inteligente, procedemos a compilar (CUIDADO CON MAYUSCULA Y MINISCULAS AL ESCRIBIR EL CODIGO)
  5. Verifica la versión, mantén abierto el código que van a compilar, en caso de algún error remix te dirá el error.
  6. Ahora vamos a desplegar el contrato en la blockchain

Todo desarrollador Ethereum tiene que conocer Remix, es casi obligatorio. Muy buena explicación!

Ahora envia usar Sepolia

El código en los recursos está medio raro así que se los dejo acá.

Nota: Le metí una variación para cambiar el contador en una cantidad determinada

//SPDX-License-Identifier: MIT
pragma solidity >=0.8.7;

contract Counter {
    uint counter;

    constructor(uint _counter){
        counter = _counter;
    }

    function getCounter() public view returns(uint){
        return counter;
    }

    function increment(uint _qty) public{
        counter = counter + _qty;
    }
}

hahaha me tarde como una hora pero fue muy divertida la clase

Asi sale actualmente, y WalletConnect no funciona :(![](https://static.platzi.com/media/user_upload/image-312451d6-6227-4a26-b645-86427d7ffc2c.jpg)![](https://static.platzi.com/media/user_upload/image-404c0b25-30f5-44be-857f-af0daf6cd847.jpg)
**Una mega duda.** Por lo que entiendo, desplegar el contrato tiene un coste de gas para crear el contendido del contrato. Pero al usar las funciones del contrato una vez desplegado también tiene un costo, dependiendo de si la función modifica o no el contrato. Por ejemplo una vez desplegado y pagado el gas, se puede ver el contador cuantas veces se quiera sin ningún coste. Pero incrementarlo conlleva a otra transacción. Mi pregunta es ¿Esto es realmente así o hay otras condiciones? ¿El coste del despliegue va a ser el mismo del coste post-despliegue o depende de la función ejecutada?
Hi 1. No supe por que el > quedo rojo 2. Pude obtener ETH con SEPOLIA no con GOERLI 3. El Resultado: 4. ![](https://static.platzi.com/media/user_upload/image-8d763759-6868-4be1-bae9-a7aeffcfe2c5.jpg)![](https://static.platzi.com/media/user_upload/image-6f3e560c-938a-49f1-b4bd-54795eca8915.jpg)

Excelente ahora si, la teoria puesta en practica!

Me da ansiedad no usar el this jeje