Contrato inteligente de solidez (3): utilice trufa para compilar, implementar y probar contratos
Primero busque el código fuente, escríbalo, ejecútelo y luego explique lentamente cómo usar la solidez para escribir contratos inteligentes de Ethereum.
Este archivo está escrito en el directorio de contratos
Este archivo está en el directorio de migraciones
Puede crear un directorio de prueba para este archivo y colocarlo allí.
Para compilar los contratos en el proyecto Truffle, cambie al directorio raíz del proyecto y escriba lo siguiente en la terminal:
La primera ejecución compilará todos los contratos. En ejecuciones posteriores, Truffle solo compilará los contratos que hayan cambiado desde la última compilación. Si queremos anular este comportamiento, podemos ejecutar el comando anterior con la opción --all.
Los archivos de objetos compilados (Artefactos) se colocarán en el directorio build/contracts/, en relación con el directorio raíz del proyecto (si el directorio no existe, se creará).
Estos artefactos son parte del funcionamiento interno de Truffle y juegan un papel importante en la implementación exitosa de su aplicación. No edite estos archivos, ya que se sobrescribirán durante la compilación e implementación del contrato.
Después de una compilación exitosa
El script de migración (archivo JavaScript) nos ayudará a implementar el contrato en la red Ethereum. Estos archivos son responsables de organizar nuestras tareas de implementación, asumiendo que nuestras necesidades de implementación cambiarán con el tiempo. A medida que el proyecto crezca, crearemos nuevos scripts de migración para avanzar aún más en blockchain. Los registros de implementación ejecutados previamente se registrarán en la cadena a través de un contrato de migración especial de Migraciones, como se detalla a continuación.
Comando de implementación
Para ejecutar una implementación, ejecute el siguiente comando:
Esto implementará todos los archivos de migración en el directorio de migración del proyecto. La migración más sencilla consiste simplemente en un conjunto de scripts de implementación administrativa. Si hemos ejecutado migraciones con éxito antes, trufa migrar solo ejecutará las migraciones recién creadas desde la última ejecución. Si no hay nuevas migraciones, la migración de las trufas no servirá de nada. Podemos ejecutar todas las migraciones desde cero usando la opción --reset. Para pruebas locales, asegúrese de tener una cadena de bloques de prueba (como Ganache) instalada y en ejecución antes de realizar la migración.
El valor de entrada del script de prueba es 100 y el valor recuperado es 64 (el valor está en formato hexadecimal y es 100 después de la conversión a decimal).