Compilación y despliegue de contratos
Aprenda a compilar su código Solidity en bytecode y a desplegar contratos en una red local de desarrollo.
Compilación y despliegue de contratos es una lección gratuita de Blockchain Smart Contracts with Solidity en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Blockchain Smart Contracts with Solidity, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Blockchain Smart Contracts with Solidity incluye 4 lecciones en total.
Intro to Compile & Deploy
¡Excelente trabajo configurando tu entorno! Ahora, vamos a darle vida a tu código Solidity. Esta lección cubre dos pasos esenciales: compilar y desplegar tus contratos inteligentes.
Piénsalo como si estuvieras creando una aplicación: primero escribes el código, luego lo conviertes en algo que una computadora pueda ejecutar (compilar) y, finalmente, lo colocas en algún lugar para que las personas puedan usarlo (desplegar).
What is Compilation?
La compilación es el proceso de convertir tu código Solidity legible para humanos en bytecode legible para máquinas. La Máquina Virtual de Ethereum (EVM) entiende este bytecode.
- Solidity es un lenguaje de alto nivel.
- La EVM ejecuta bytecode de bajo nivel.
- El compilador actúa como un traductor entre ambos.
Compiling with Hardhat
Hardhat hace que la compilación sea sencilla. Una vez que tus archivos Solidity estén en la carpeta contracts/, solo necesitas un comando en tu terminal.
Este comando le indica a Hardhat que busque todos los archivos .sol y los compile en bytecode.
npx hardhat compileUnderstanding Artifacts
Después de compilar, Hardhat crea una carpeta artifacts/. Dentro, encontrarás archivos JSON para cada contrato. Estos archivos contienen información vital:
- Bytecode: El código ejecutable por la EVM.
- ABI (Interfaz Binaria de Aplicación): Describe cómo interactuar con tu contrato.
- Mapa de origen (Source Map): Ayuda con la depuración al vincular el bytecode con el código fuente.
What is Deployment?
El despliegue es el acto de enviar el código de bytes de su contrato a una red blockchain. Una vez desplegado, su contrato reside en esa red y cualquier persona puede interactuar con él.
Cada despliegue consume gas (una tarifa de transacción) y da como resultado una dirección de contrato única en la blockchain.
Local Dev Networks
Antes de implementar en una red pública como Ethereum Mainnet, es crucial probar tus contratos en una red de desarrollo local.
Hardhat viene con su propia red integrada, la cual es perfecta para realizar pruebas rápidas, gratuitas y aisladas. Esta se reinicia cada vez que la vuelves a iniciar.
Our Example Contract
¡Antes de implementar, necesitamos un contrato! Usemos un contrato Greeter.sol sencillo. Este contrato almacena un saludo y te permite cambiarlo.
Guarda esto en tu carpeta contracts/:
/* contracts/Greeter.sol */
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract Greeter {
string private greeting;
constructor(string memory _greeting) {
greeting = _greeting;
}
function greet() public view returns (string memory) {
return greeting;
}
function setGreeting(string memory _greeting) public {
greeting = _greeting;
}
}The Deployment Script
Este script de JavaScript, guardado como scripts/deploy.js, le indicará a Hardhat cómo implementar nuestro contrato Greeter en la red.
Utiliza la integración ethers.js integrada en Hardhat para manejar la implementación del contrato. Intenta ejecutar este ejemplo:
// scripts/deploy.js
async function main() {
const Greeter = await ethers.getContractFactory("Greeter");
const greeter = await Greeter.deploy("Hello, CoddyKit!");
await greeter.deployed();
console.log("Greeter deployed to:", greeter.address);
}
main()
.then(() => process.exit(0))
.catch((error) => {
console.error(error);
process.exit(1);
});Running the Deploy Script
Con tu contrato compilado y tu script de despliegue listo, ¡es hora de desplegar! Abre tu terminal y ejecuta este comando:
Hardhat iniciará automáticamente su red local, desplegará tu contrato y luego se cerrará (a menos que ejecutes npx hardhat node primero).
npx hardhat run scripts/deploy.jsTest Your Knowledge
Vamos a comprobar tu comprensión del proceso de compilación y despliegue en Hardhat.
Your Contracts Are Live!
¡Has aprendido con éxito cómo compilar tu código de Solidity en bytecode y desplegarlo en una red de desarrollo local!
- Compilar: Transforma Solidity en bytecode de EVM y crea el ABI.
- Desplegar: Coloca el bytecode de tu contrato en una blockchain.
- Red de Hardhat: Ideal para pruebas locales.
¡A continuación, aprenderás cómo interactuar con estos contratos desplegados!
Preguntas frecuentes
¿La lección «Compilación y despliegue de contratos» es gratis?
Sí — el texto completo de «Compilación y despliegue de contratos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Blockchain Smart Contracts with Solidity, actualiza a CoddyKit PRO. El curso de Blockchain Smart Contracts with Solidity incluye 4 lecciones en total.
¿Qué aprenderé en «Compilación y despliegue de contratos»?
Aprenda a compilar su código Solidity en bytecode y a desplegar contratos en una red local de desarrollo. Practicas Blockchain Smart Contracts with Solidity con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Blockchain Smart Contracts with Solidity?
No se requiere experiencia previa. Blockchain Smart Contracts with Solidity en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Compilación y despliegue de contratos»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Blockchain Smart Contracts with Solidity?
Sí. Cada lección de Blockchain Smart Contracts with Solidity incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Configuración de Hardhat o Truffle
- Compilación y despliegue de contratos
- Interacción con contratos desplegados
- Escritura y ejecución de pruebas de contratos