Elaborar un contrato
En esta sección, descargaremos el código de un contrato de ejemplo y lo compilaremos en un ejecutable binario wasm.
Pre requisitos
Consulte la guía Configuración del entorno para instalar las dependencias necesarias antes de continuar.
Descargar el contrato
Comience descargando el repositorio cw-contracts. Compilarás el contrato de servicio de nombres.
Clonar el repositorio:
Compile el contrato
Compile usando cargo
Ejecute el siguiente comando para compilar el contrato:
Tras la compilación, debería generarse el fichero target/wasm32-unknown-unknown/release/cw_nameservice.wasm.
El tamaño del archivo es de aproximadamente 1,9 MB, lo que indica que se trata de una compilación de lanzamiento pero que aún no se ha eliminado todo el código innecesario. Para almacenar el contrato en la cadena, se requiere optimización. Consulte la sección Compilación optimizada para obtener instrucciones sobre cómo optimizar un contrato.
Compilar con archway developer cli
Ejecute el siguiente comando para compilar el contrato:
Este proceso también genera una versión no optimizada del contrato, que deberá ser optimizada antes de ser almacenada en la cadena.
Compilación optimizada
Para reducir los costes de gas, el tamaño binario debe ser lo más pequeño posible. De este modo, el despliegue será menos costoso y las tasas por cada interacción serán más bajas. Afortunadamente, hay herramientas disponibles para ayudar con esto. Estas herramientas de optimización producen construcciones reproducibles de contratos inteligentes CosmWasm. Esto significa que terceras partes pueden verificar que el contrato contiene realmente el código reclamado.
Optimizar con archway developer cli
Para construir un binario wasm optimizado para su almacenamiento en la blockchain, utiliza la bandera --optimize. La CLI de Archway Developer utiliza rust-optimizer en segundo plano:
Optimiza usando cargo
El siguiente comando debería dar un contrato optimizado que puede ser almacenado en cadena:
Optimización con rust-optimizer
Información
Necesitará tener instalado Docker para ejecutar rust-optimizer.
Navega a la raíz del proyecto y ejecuta el siguiente comando:
Este comando optimizará el archivo .wasm y generará un archivo .wasm optimizado en el directorio de artefactos.
Last updated