Redes de desarrollo
Última edición: @Hackedd.eth(opens in a new tab), 29 de agosto de 2024
Cuando construyes una aplicación de Ethereum con contratos inteligentes, desearás ejecutar en una red local para ver cómo funciona antes de implementarla.
De forma similar a la ejecución de un servidor local en tu ordenador para realizar desarrollo web, puedes utilizar una red de desarrollo para crear una instancia local de blockchain para probar tu dapp. Estas redes de desarrollo de Ethereum proporcionan características que permiten una iteración mucho más rápida que una red de pruebas pública (p. ej., no es necesario tratar de adquirir ETH desde el regulador de una red de pruebas).
Requisitos previos
Sería interesante que comprendieras los conceptos básicos del bloque de Ethereum y las redes de Ethereum antes de sumergirte en la información sobre las redes de desarrollo.
¿Qué es una red de desarrollo?
Las redes de desarrollo son esencialmente clientes de Ethereum (implementaciones de Ethereum), que se han diseñado específicamente para el desarrollo local.
¿Por qué no basta con ejecutar localmente un nodo estándar de Ethereum?
Podría ejecutar un nodo, pero, dado a que las redes de desarrollo están diseñadas específicamente para el desarrollo, a menudo vienen repletas de funciones convenientes como:
- Sembrar de forma determinista su cadena de bloques local con datos (p. ej., cuentas con saldos en ETH).
- Producir bloques al instante con cada transacción que recibe, en orden y sin demora
- Funcionalidad mejorada para depurar y registrar
Herramientas disponibles
Nota: La mayoría de los frameworks de desarrollo incluyen una red de desarrollo integrada. Te recomendamos comenzar con un framework para configurar tu entorno de desarrollo local.
Red de tipo Hardhat
Una red local de Ethereum diseñada para el desarrollo. Le permite implementar sus contratos, ejecutar sus pruebas y depurar su código.
La red de tipo Hardhat viene integrada con Hardhat, que es un entorno de desarrollo de Ethereum para profesionales.
Cadenas de baliza locales
Algunos clientes de consenso tienen herramientas integradas para implementar cadenas de baliza locales con fines de prueba. Las instrucciones para Lighthouse, Nimbus y Lodestar están disponibles:
- Red de prueba local con Lodestar(opens in a new tab)
- Red de prueba local con Lighthouse(opens in a new tab)
- Red de prueba local con Nimbus(opens in a new tab)
Cadenas de prueba públicas de Ethereum
También hay dos implantaciones de prueba públicas mantenidas de Ethereum: Goerli y Sepolia. La red de prueba recomendada con soporte a largo plazo es Goerli, en la que cualquiera es libre de validar. Sepolia es una cadena más nueva y más pequeña que también se espera que se mantenga en el futuro próximo, con un conjunto de validadores autorizados (lo que significa que no hay acceso general a nuevos validadores en esta red de prueba). Se espera que la cadena Ropsten quede obsoleta en el cuarto trimestre de 2022 y que la cadena Rinkeby quede obsoleta en el segundo o tercer trimestre de 2023.
- Launchpad de staking de Goerli(opens in a new tab)
- Anuncio de baja de Ropsten, Rinkeby y Kiln(opens in a new tab)
Paquete de Ethereum de Kurtosis
Kurtosis es un sistema de construcción para entornos de prueba de múltiples contenedores que permite a los desarrolladores levantar localmente instancias reproducibles de redes de cadena de bloques.
El paquete Ethereum Kurtosis se puede utilizar para instanciar rápidamente una red de pruebas de Ethereum parametrizable, altamente escalable y privada sobre Docker o Kubernetes. El paquete es compatible con los principales clientes de la Capa de Ejecución (EL) y la Capa de Consenso (CL). Kurtosis gestiona con elegancia todos los mapeos locales de puertos y conexiones de servicios para una red representativa que se utilizará en flujos de trabajo de validación y pruebas relacionados con la infraestructura básica de Ethereum.
- Paquete de red Ethereum(opens in a new tab)
- Sitio web(opens in a new tab)
- GitHub(opens in a new tab)
- Documentación(opens in a new tab)
Leer más
¿Conoce algún recurso de la comunidad que le haya servido de ayuda? Edite esta página y añádalo.