Desarrollo E Implementación De Contratos Inteligentes De Tezos

Tezos es una de las cadenas de bloques de contratos inteligentes más antiguas, siendo Ethereum la primera.

Si bien Ethereum es una opción popular entre los desarrolladores para desarrollar e implementar contratos inteligentes, sus aplicaciones no son muy escalables debido a las altas tarifas y las transacciones lentas. Por el contrario, las aplicaciones de Tezos son muy eficientes y económicas de configurar.

En esta guía, aprenderá a desarrollar e implementar contratos inteligentes en Tezos con SmartPy CLI. 

Puede obtener el código del proyecto final en este repositorio de GitHub .

requisitos previos

Para seguir este artículo, debe estar familiarizado con la cadena de bloques de Tezos. Tu conocimiento no tiene que ser profundo.

No se requiere conocimiento de la cadena de bloques de Ethereum, pero ayuda mucho.

¿Qué es Tezos?

Tezos es una red de cadena de bloques y una plataforma de contrato inteligente que está diseñada para ser adaptable a través de su modelo de gobierno y capacidad de autoactualización.

Si bien Tezos y Ethereum son cadenas de bloques similares que admiten contratos inteligentes y desarrollo de DApp, son diferentes en varios aspectos. La siguiente tabla de Tezos vs. Ethereum muestra algunas de las diferencias entre las dos redes.

Tezos vs. Ethereum: un cuadro comparativo

TezosEtéreo
Los desarrolladores hacen propuestas para actualizar el protocolo blockchain en la redLos desarrolladores usan un hardfork para actualizar el protocolo blockchain
Las partes interesadas controlan las actualizaciones del protocolo blockchain votando para aceptar o rechazar propuestasLos creadores de la red blockchain gobiernan las actualizaciones del protocolo blockchain
Utiliza verificación formal para ejecutar contratos inteligentesUtiliza EVM para almacenar y ejecutar contratos inteligentes en la red
Los participantes (nodos) tienen la opción de proporcionar recursos informáticos o delegar sus tokens para participar en la validación de transaccionesTodos los participantes (nodos) deben proporcionar recursos informáticos y apostar sus monedas para participar en la validación de transacciones.
Las tarifas de gas son bajas, lo que lo hace muy escalableLas tarifas de gas son realmente altas, lo que lo hace inescalable

¿Qué es SmartPy?

SmartPy es una herramienta que le permite crear contratos inteligentes fácilmente en la cadena de bloques de Tezos.

Escribes contratos en SmartPy usando Python. Si ya está familiarizado con Python, no tiene que aprender un nuevo lenguaje de programación de contratos inteligentes .

SmartPy viene en otras dos variantes que usan otras sintaxis: SmartTS, que usa TypeScript, y SmartML, que usa OCaml.

SmartPy compila scripts de Python para Michelson. Michelson es un lenguaje de programación de bajo nivel para contratos inteligentes en Tezos. SmartTS y SmartML también se pueden compilar con la herramienta SmartPy.

¿Qué son los contratos inteligentes?

Los contratos inteligentes son programas que puede crear, implementar y ejecutar en una red de cadena de bloques. No necesita poseer un nodo en la red antes de implementar su contrato inteligente.

Con los contratos inteligentes, puede crear aplicaciones accesibles para todos los dispositivos sin tener ni mantener un servidor. Estas aplicaciones totalmente descentralizadas requieren poco o ningún mantenimiento.

Los contratos inteligentes utilizan todo el potencial de las cadenas de bloques, lo que le permite ejecutar programas en la cadena e interactuar con la cadena misma. Puede retener o transferir tokens y acceder a funciones especializadas en la cadena de bloques con un contrato inteligente.

Primeros pasos con SmartPy CLI

Para instalar SmartPy CLI, ejecute el siguiente comando:

$ bash <(curl -s https://smartpy.io/cli/install.sh)

Este comando crea un smartpy-clidirectorio homecon esta estructura de árbol:

smartpy-cli
├── browser.py
├── node_modules/
├── originator.js
├── package.json
├── package-lock.json
├── __pycache__/
├── smart.css
├── smart.js
├── smartpyc.js
├── smartpyc.py
├── smartpyio.py
├── smartpy.py
├── SmartPy.sh
├── smarttop/
├── smart-ts-cli.js
├── templates/
├── theme.js
└── typography.css

Para confirmar la instalación, ejecute lo siguiente:

$ ~/smartpy-cli/SmartPy.sh --version

Como un paso adicional para facilitar el SmartPy.shacceso, cree un alias copiando lo siguiente en su .bashrcarchivo o archivo de perfil relacionado:

$ alias smartpy="$HOME/smartpy-cli/SmartPy.sh"

Ahora puedes usar:

$ smartpy --version

En vez de:

$ ~/smartpy-cli/SmartPy.sh --version

configurandotezos-client

Esta guía se utiliza tezos-clientpara interactuar con un contrato inteligente implementado. Para instalar tezos-client,, ejecute uno de los siguientes comandos, dependiendo de si está utilizando un sistema operativo Mac o Linux:

# Mac
$ brew tap serokell/tezos-packaging-stable https://github.com/serokell/tezos-packaging-stable.git
$ brew install tezos-client

# Linux
$ wget https://github.com/serokell/tezos-packaging/releases/latest/download/tezos-client
$ chmod +x tezos-client
$ mkdir -p $HOME/.local/bin
$ mv tezos-client $HOME/.local/bin
$ echo 'export PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc
$ source $HOME/.bashrc

Tenga en cuenta que si está utilizando Windows, debe instalar una distribución de Linux con wsl y ejecutar la instalación de Linux.

Después de la instalación tezos-client, debe configurarlo. Comience ejecutando el siguiente comando:

$ tezos-client --endpoint https://jakartanet.ecadinfra.com config update

Esta guía utiliza la red de prueba Jarkatanet para implementar e interactuar con un contrato inteligente. El comando anterior se conecta tezos-clienta la red de prueba de Jakartanet a través del nodo https://jakartanet.ecadinfra.comen la red.

Antes de realizar cualquier operación con tezos-client, debe conectar una cuenta. Tezos proporciona cuentas Faucet que le permiten interactuar con la red de forma gratuita.

Debe visitar el sitio web de Jakartanet Faucet y descargar el archivo Faucet. Después de hacer eso, abra la carpeta de descarga en su terminal y ejecute este comando:

$ tezos-client activate account faucet with ./jakartanet.json

El comando activa la cuenta de Faucet en tu cuenta tezos-clienty le otorga un alias faucet. Para verificar el saldo de esta cuenta, abra el jakartanet.jsonarchivo, copie el valor de pkhy luego ejecute este comando:

$ tezos-client get balance for <address>

Reemplace <address>con el pkhvalor que copió.

Tenga en cuenta que las cuentas de Tezos Faucet están disponibles públicamente para todos y tienen una cantidad limitada de tokens Tez, por lo que debe regular su uso.

Desarrollando un contrato inteligente de Tezos con SmartPy

Para comenzar a crear nuestro contrato inteligente de ejemplo, cree un nuevo store_text.pyarchivo y copie lo siguiente en él:

import smartpy as sp

class StoreText(sp.Contract):
    def __init__(self, value):
        self.init(text = value)

    @sp.entry_point
    def replace(self, params):
        self.data.text = params.text

    @sp.entry_point    # Note: the spaces before "@"
    def append(self, params):
        self.data.text += params.text

Así es como funciona el contrato anterior, pieza por pieza:

Primero, importamos la smartpybiblioteca:

import smartpy as sp

Luego, definimos una clase que se extiende sp.Contract:

class StoreText(sp.Contract):

Por último, definimos algunos elementos dentro del contrato inteligente; primero, un constructor para inicializar text:

    def __init__(self, value):    # Note: the spaces before "def"
        self.init(text = value)

En segundo lugar, un punto de entrada para reemplazar el valor de text:

    @sp.entry_point    # Note: the spaces before "@"
    def replace(self, params):
        self.data.text = params.text

En tercer lugar, un punto de entrada para agregar una cadena a text:

    @sp.entry_point    # Note: the spaces before "@"
    def append(self, params):
        self.data.text += params.text

A continuación, echemos un vistazo a cómo probar el contrato inteligente.

Probando el contrato inteligente de Tezos

Los contratos inteligentes que se implementan en Tezos no se pueden cambiar ni eliminar. Esto puede ser un problema porque podría haber errores en el contrato, y los errores podrían conducir a errores costosos y la pérdida de fondos.

SmartPy le brinda la capacidad de probar fácilmente su contrato antes de implementarlo. Probar el contrato no requiere ningún token o una cuenta de billetera para ejecutarse. Todo lo que necesita hacer es abrir el store_text.pyarchivo y copiar lo siguiente debajo de él:

@sp.add_test(name = "StoreText")
def test():
  scenario = sp.test_scenario()
  contract = StoreText("Hello")
  scenario += contract

  scenario.verify(contract.data.text == "Hello")

  contract.replace(text = "Hi")
  contract.append(text = ", there!")
  scenario.verify(contract.data.text == "Hi, there!")

Así es como funciona el fragmento. Primero, registramos la testfunción como script de prueba:

@sp.add_test(name = "StoreText")

Luego, definimos la testfunción:

def test():

En las líneas restantes, creamos un escenario de prueba:

  scenario = sp.test_scenario()

Inicializó el contrato con "Hello":

  contract = StoreText("Hello")

Se agregó la instancia del contrato al escenario:

  scenario += contract

Verificado que el textvalor del contrato es "Hello":

  scenario.verify(contract.data.text == "Hello")

Llamado los puntos de entrada replacey append:

  contract.replace(text = "Hi")
  contract.append(text = ", there!")

Y finalmente, verificado que el textvalor del contrato ahora es "Hi, there":

  scenario.verify(contract.data.text == "Hi, there!")

Después de agregar la prueba, guarde el archivo y ejecute este comando:

$ ~/smartpy-cli/SmartPy.sh test store_text.py ./test-output

Si la prueba es exitosa, el compilador no arrojará un mensaje de error.

Compilando el contrato inteligente para Michelson

Antes de implementar su contrato inteligente, debe compilarlo en Michelson. Como se mencionó anteriormente, Michelson es un lenguaje de programación de bajo nivel utilizado para contratos inteligentes en la cadena de bloques de Tezos.

Para compilar store_text.py, ejecute lo siguiente:

$ ~/smartpy-cli/SmartPy.sh compile message.py ./output

Si se compiló con éxito, debería ver una outputcarpeta como la siguiente:

output/
├── scenario.json
├── script_init.py
├── script_pure.py
└── storeMessage/
    ├── log.txt
    ├── step_000_cont_0_contract.json
    ├── step_000_cont_0_contract.py
    ├── step_000_cont_0_contract.tz
    ├── step_000_cont_0_sizes.csv
    ├── step_000_cont_0_storage.json
    ├── step_000_cont_0_storage.py
    ├── step_000_cont_0_storage.tz
    └── step_000_cont_0_types.py

El outputdirectorio contiene todos los archivos necesarios para implementar el contrato inteligente.

Implementación del contrato inteligente de Tezos

Para implementar store_text.py, abra la output/storeMessagecarpeta en la terminal y ejecute el siguiente comando:

$ ~/smartpy-cli/SmartPy.sh originate-contract --code step_000_cont_0_contract.json --storage step_000_cont_0_storage.json --rpc https://jakartanet.ecadinfra.com

[INFO] - Using RPC https://jakartanet.ecadinfra.com/...
[INFO] - Contract KT1………………CAjjW originated!!!

Así es como funciona el comando:

  • originate-contractle dice tezos-clienta implementar ("originar") un contrato
  • --code step_000_cont_0_contract.jsonapunta al archivo de contrato compilado
  • --storage step_000_cont_0_storage.jsonapunta al archivo de almacenamiento compilado
  • --rpc https://jakartanet.ecadinfra.comapunta a un nodo RPC en la red en la que está implementando

Los contratos inteligentes de Tezos generalmente involucran dos componentes: el almacenamiento y el contrato. El almacenamiento contiene los datos que almacena el contrato, y el contrato contiene la lógica del contrato inteligente.

Tenga en cuenta que puede implementar el contrato con cualquiera de las compilaciones de contrato o almacenamiento. Solo tienen que tener la misma extensión de archivo cuando usa el comando.

De manera predeterminada, si está implementando en una red de prueba, el compilador usará una cuenta de Faucet. Si está implementando en la red principal o desea usar su cuenta de billetera, agregue la --private-keybandera seguida de la clave privada de la cuenta.

Interactuar con el contrato inteligente implementado

Antes de interactuar con el contrato inteligente implementado, debe saber cómo se ve actualmente el contrato. Para hacer eso, abra SmartPy Explorer en su navegador y siga estos pasos:

  1. Navegue a "Nodos alternativos"
  2. Pegue la dirección del contrato en la entrada "Contrato"
  3. En "Explorar en un nodo específico", cambie de mainnetajakartanet
  4. Pegue la URL de RPC https://jakartanet.ecadinfra.comen el cuadro de texto
  5. Haga clic en "Explorar en un nodo específico"

Cuando aparezcan los datos del contrato, el almacenamiento de texto debería mostrarse como "¡Hola, allí!"

Ahora que conoce el texto del contrato, puede cambiarlo a "¡Hola, allí!" llamando al replacepunto de entrada con este comando:

$ tezos-client transfer 0 from faucet to <contract-address> --entrypoint replace --arg '"Hi, There!"'

Si el comando fue exitoso, cuando actualice el explorador, el almacenamiento ahora debería mostrar "¡Hola, allí!"

Tenga en cuenta que debe reemplazar <contract-address>con la dirección del contrato implementado antes de ejecutar el comando.

Conclusión

Este artículo cubre el proceso de creación de contratos inteligentes en Tezos con SmartPy. La creación de contratos inteligentes le permite aprovechar al máximo la red blockchain para crear aplicaciones y organizaciones descentralizadas.

Espero que este artículo te haya ayudado a comprender el proceso de creación de contratos inteligentes en Tezos. Si desea leer más sobre los contratos inteligentes, consulte este artículo sobre los errores de contratos inteligentes que debe evitar.

¡Gracias por leer! Y ten un buen día. Desarrollo e implementación de contratos inteligentes de Tezos

Fuente: https://blog.logrocket.com/developing-deploying-tezos-smart-contracts/

#tezos #smartpy 

What is GEEK

Buddha Community

Desarrollo E Implementación De Contratos Inteligentes De Tezos

Desarrollo E Implementación De Contratos Inteligentes De Tezos

Tezos es una de las cadenas de bloques de contratos inteligentes más antiguas, siendo Ethereum la primera.

Si bien Ethereum es una opción popular entre los desarrolladores para desarrollar e implementar contratos inteligentes, sus aplicaciones no son muy escalables debido a las altas tarifas y las transacciones lentas. Por el contrario, las aplicaciones de Tezos son muy eficientes y económicas de configurar.

En esta guía, aprenderá a desarrollar e implementar contratos inteligentes en Tezos con SmartPy CLI. 

Puede obtener el código del proyecto final en este repositorio de GitHub .

requisitos previos

Para seguir este artículo, debe estar familiarizado con la cadena de bloques de Tezos. Tu conocimiento no tiene que ser profundo.

No se requiere conocimiento de la cadena de bloques de Ethereum, pero ayuda mucho.

¿Qué es Tezos?

Tezos es una red de cadena de bloques y una plataforma de contrato inteligente que está diseñada para ser adaptable a través de su modelo de gobierno y capacidad de autoactualización.

Si bien Tezos y Ethereum son cadenas de bloques similares que admiten contratos inteligentes y desarrollo de DApp, son diferentes en varios aspectos. La siguiente tabla de Tezos vs. Ethereum muestra algunas de las diferencias entre las dos redes.

Tezos vs. Ethereum: un cuadro comparativo

TezosEtéreo
Los desarrolladores hacen propuestas para actualizar el protocolo blockchain en la redLos desarrolladores usan un hardfork para actualizar el protocolo blockchain
Las partes interesadas controlan las actualizaciones del protocolo blockchain votando para aceptar o rechazar propuestasLos creadores de la red blockchain gobiernan las actualizaciones del protocolo blockchain
Utiliza verificación formal para ejecutar contratos inteligentesUtiliza EVM para almacenar y ejecutar contratos inteligentes en la red
Los participantes (nodos) tienen la opción de proporcionar recursos informáticos o delegar sus tokens para participar en la validación de transaccionesTodos los participantes (nodos) deben proporcionar recursos informáticos y apostar sus monedas para participar en la validación de transacciones.
Las tarifas de gas son bajas, lo que lo hace muy escalableLas tarifas de gas son realmente altas, lo que lo hace inescalable

¿Qué es SmartPy?

SmartPy es una herramienta que le permite crear contratos inteligentes fácilmente en la cadena de bloques de Tezos.

Escribes contratos en SmartPy usando Python. Si ya está familiarizado con Python, no tiene que aprender un nuevo lenguaje de programación de contratos inteligentes .

SmartPy viene en otras dos variantes que usan otras sintaxis: SmartTS, que usa TypeScript, y SmartML, que usa OCaml.

SmartPy compila scripts de Python para Michelson. Michelson es un lenguaje de programación de bajo nivel para contratos inteligentes en Tezos. SmartTS y SmartML también se pueden compilar con la herramienta SmartPy.

¿Qué son los contratos inteligentes?

Los contratos inteligentes son programas que puede crear, implementar y ejecutar en una red de cadena de bloques. No necesita poseer un nodo en la red antes de implementar su contrato inteligente.

Con los contratos inteligentes, puede crear aplicaciones accesibles para todos los dispositivos sin tener ni mantener un servidor. Estas aplicaciones totalmente descentralizadas requieren poco o ningún mantenimiento.

Los contratos inteligentes utilizan todo el potencial de las cadenas de bloques, lo que le permite ejecutar programas en la cadena e interactuar con la cadena misma. Puede retener o transferir tokens y acceder a funciones especializadas en la cadena de bloques con un contrato inteligente.

Primeros pasos con SmartPy CLI

Para instalar SmartPy CLI, ejecute el siguiente comando:

$ bash <(curl -s https://smartpy.io/cli/install.sh)

Este comando crea un smartpy-clidirectorio homecon esta estructura de árbol:

smartpy-cli
├── browser.py
├── node_modules/
├── originator.js
├── package.json
├── package-lock.json
├── __pycache__/
├── smart.css
├── smart.js
├── smartpyc.js
├── smartpyc.py
├── smartpyio.py
├── smartpy.py
├── SmartPy.sh
├── smarttop/
├── smart-ts-cli.js
├── templates/
├── theme.js
└── typography.css

Para confirmar la instalación, ejecute lo siguiente:

$ ~/smartpy-cli/SmartPy.sh --version

Como un paso adicional para facilitar el SmartPy.shacceso, cree un alias copiando lo siguiente en su .bashrcarchivo o archivo de perfil relacionado:

$ alias smartpy="$HOME/smartpy-cli/SmartPy.sh"

Ahora puedes usar:

$ smartpy --version

En vez de:

$ ~/smartpy-cli/SmartPy.sh --version

configurandotezos-client

Esta guía se utiliza tezos-clientpara interactuar con un contrato inteligente implementado. Para instalar tezos-client,, ejecute uno de los siguientes comandos, dependiendo de si está utilizando un sistema operativo Mac o Linux:

# Mac
$ brew tap serokell/tezos-packaging-stable https://github.com/serokell/tezos-packaging-stable.git
$ brew install tezos-client

# Linux
$ wget https://github.com/serokell/tezos-packaging/releases/latest/download/tezos-client
$ chmod +x tezos-client
$ mkdir -p $HOME/.local/bin
$ mv tezos-client $HOME/.local/bin
$ echo 'export PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc
$ source $HOME/.bashrc

Tenga en cuenta que si está utilizando Windows, debe instalar una distribución de Linux con wsl y ejecutar la instalación de Linux.

Después de la instalación tezos-client, debe configurarlo. Comience ejecutando el siguiente comando:

$ tezos-client --endpoint https://jakartanet.ecadinfra.com config update

Esta guía utiliza la red de prueba Jarkatanet para implementar e interactuar con un contrato inteligente. El comando anterior se conecta tezos-clienta la red de prueba de Jakartanet a través del nodo https://jakartanet.ecadinfra.comen la red.

Antes de realizar cualquier operación con tezos-client, debe conectar una cuenta. Tezos proporciona cuentas Faucet que le permiten interactuar con la red de forma gratuita.

Debe visitar el sitio web de Jakartanet Faucet y descargar el archivo Faucet. Después de hacer eso, abra la carpeta de descarga en su terminal y ejecute este comando:

$ tezos-client activate account faucet with ./jakartanet.json

El comando activa la cuenta de Faucet en tu cuenta tezos-clienty le otorga un alias faucet. Para verificar el saldo de esta cuenta, abra el jakartanet.jsonarchivo, copie el valor de pkhy luego ejecute este comando:

$ tezos-client get balance for <address>

Reemplace <address>con el pkhvalor que copió.

Tenga en cuenta que las cuentas de Tezos Faucet están disponibles públicamente para todos y tienen una cantidad limitada de tokens Tez, por lo que debe regular su uso.

Desarrollando un contrato inteligente de Tezos con SmartPy

Para comenzar a crear nuestro contrato inteligente de ejemplo, cree un nuevo store_text.pyarchivo y copie lo siguiente en él:

import smartpy as sp

class StoreText(sp.Contract):
    def __init__(self, value):
        self.init(text = value)

    @sp.entry_point
    def replace(self, params):
        self.data.text = params.text

    @sp.entry_point    # Note: the spaces before "@"
    def append(self, params):
        self.data.text += params.text

Así es como funciona el contrato anterior, pieza por pieza:

Primero, importamos la smartpybiblioteca:

import smartpy as sp

Luego, definimos una clase que se extiende sp.Contract:

class StoreText(sp.Contract):

Por último, definimos algunos elementos dentro del contrato inteligente; primero, un constructor para inicializar text:

    def __init__(self, value):    # Note: the spaces before "def"
        self.init(text = value)

En segundo lugar, un punto de entrada para reemplazar el valor de text:

    @sp.entry_point    # Note: the spaces before "@"
    def replace(self, params):
        self.data.text = params.text

En tercer lugar, un punto de entrada para agregar una cadena a text:

    @sp.entry_point    # Note: the spaces before "@"
    def append(self, params):
        self.data.text += params.text

A continuación, echemos un vistazo a cómo probar el contrato inteligente.

Probando el contrato inteligente de Tezos

Los contratos inteligentes que se implementan en Tezos no se pueden cambiar ni eliminar. Esto puede ser un problema porque podría haber errores en el contrato, y los errores podrían conducir a errores costosos y la pérdida de fondos.

SmartPy le brinda la capacidad de probar fácilmente su contrato antes de implementarlo. Probar el contrato no requiere ningún token o una cuenta de billetera para ejecutarse. Todo lo que necesita hacer es abrir el store_text.pyarchivo y copiar lo siguiente debajo de él:

@sp.add_test(name = "StoreText")
def test():
  scenario = sp.test_scenario()
  contract = StoreText("Hello")
  scenario += contract

  scenario.verify(contract.data.text == "Hello")

  contract.replace(text = "Hi")
  contract.append(text = ", there!")
  scenario.verify(contract.data.text == "Hi, there!")

Así es como funciona el fragmento. Primero, registramos la testfunción como script de prueba:

@sp.add_test(name = "StoreText")

Luego, definimos la testfunción:

def test():

En las líneas restantes, creamos un escenario de prueba:

  scenario = sp.test_scenario()

Inicializó el contrato con "Hello":

  contract = StoreText("Hello")

Se agregó la instancia del contrato al escenario:

  scenario += contract

Verificado que el textvalor del contrato es "Hello":

  scenario.verify(contract.data.text == "Hello")

Llamado los puntos de entrada replacey append:

  contract.replace(text = "Hi")
  contract.append(text = ", there!")

Y finalmente, verificado que el textvalor del contrato ahora es "Hi, there":

  scenario.verify(contract.data.text == "Hi, there!")

Después de agregar la prueba, guarde el archivo y ejecute este comando:

$ ~/smartpy-cli/SmartPy.sh test store_text.py ./test-output

Si la prueba es exitosa, el compilador no arrojará un mensaje de error.

Compilando el contrato inteligente para Michelson

Antes de implementar su contrato inteligente, debe compilarlo en Michelson. Como se mencionó anteriormente, Michelson es un lenguaje de programación de bajo nivel utilizado para contratos inteligentes en la cadena de bloques de Tezos.

Para compilar store_text.py, ejecute lo siguiente:

$ ~/smartpy-cli/SmartPy.sh compile message.py ./output

Si se compiló con éxito, debería ver una outputcarpeta como la siguiente:

output/
├── scenario.json
├── script_init.py
├── script_pure.py
└── storeMessage/
    ├── log.txt
    ├── step_000_cont_0_contract.json
    ├── step_000_cont_0_contract.py
    ├── step_000_cont_0_contract.tz
    ├── step_000_cont_0_sizes.csv
    ├── step_000_cont_0_storage.json
    ├── step_000_cont_0_storage.py
    ├── step_000_cont_0_storage.tz
    └── step_000_cont_0_types.py

El outputdirectorio contiene todos los archivos necesarios para implementar el contrato inteligente.

Implementación del contrato inteligente de Tezos

Para implementar store_text.py, abra la output/storeMessagecarpeta en la terminal y ejecute el siguiente comando:

$ ~/smartpy-cli/SmartPy.sh originate-contract --code step_000_cont_0_contract.json --storage step_000_cont_0_storage.json --rpc https://jakartanet.ecadinfra.com

[INFO] - Using RPC https://jakartanet.ecadinfra.com/...
[INFO] - Contract KT1………………CAjjW originated!!!

Así es como funciona el comando:

  • originate-contractle dice tezos-clienta implementar ("originar") un contrato
  • --code step_000_cont_0_contract.jsonapunta al archivo de contrato compilado
  • --storage step_000_cont_0_storage.jsonapunta al archivo de almacenamiento compilado
  • --rpc https://jakartanet.ecadinfra.comapunta a un nodo RPC en la red en la que está implementando

Los contratos inteligentes de Tezos generalmente involucran dos componentes: el almacenamiento y el contrato. El almacenamiento contiene los datos que almacena el contrato, y el contrato contiene la lógica del contrato inteligente.

Tenga en cuenta que puede implementar el contrato con cualquiera de las compilaciones de contrato o almacenamiento. Solo tienen que tener la misma extensión de archivo cuando usa el comando.

De manera predeterminada, si está implementando en una red de prueba, el compilador usará una cuenta de Faucet. Si está implementando en la red principal o desea usar su cuenta de billetera, agregue la --private-keybandera seguida de la clave privada de la cuenta.

Interactuar con el contrato inteligente implementado

Antes de interactuar con el contrato inteligente implementado, debe saber cómo se ve actualmente el contrato. Para hacer eso, abra SmartPy Explorer en su navegador y siga estos pasos:

  1. Navegue a "Nodos alternativos"
  2. Pegue la dirección del contrato en la entrada "Contrato"
  3. En "Explorar en un nodo específico", cambie de mainnetajakartanet
  4. Pegue la URL de RPC https://jakartanet.ecadinfra.comen el cuadro de texto
  5. Haga clic en "Explorar en un nodo específico"

Cuando aparezcan los datos del contrato, el almacenamiento de texto debería mostrarse como "¡Hola, allí!"

Ahora que conoce el texto del contrato, puede cambiarlo a "¡Hola, allí!" llamando al replacepunto de entrada con este comando:

$ tezos-client transfer 0 from faucet to <contract-address> --entrypoint replace --arg '"Hi, There!"'

Si el comando fue exitoso, cuando actualice el explorador, el almacenamiento ahora debería mostrar "¡Hola, allí!"

Tenga en cuenta que debe reemplazar <contract-address>con la dirección del contrato implementado antes de ejecutar el comando.

Conclusión

Este artículo cubre el proceso de creación de contratos inteligentes en Tezos con SmartPy. La creación de contratos inteligentes le permite aprovechar al máximo la red blockchain para crear aplicaciones y organizaciones descentralizadas.

Espero que este artículo te haya ayudado a comprender el proceso de creación de contratos inteligentes en Tezos. Si desea leer más sobre los contratos inteligentes, consulte este artículo sobre los errores de contratos inteligentes que debe evitar.

¡Gracias por leer! Y ten un buen día. Desarrollo e implementación de contratos inteligentes de Tezos

Fuente: https://blog.logrocket.com/developing-deploying-tezos-smart-contracts/

#tezos #smartpy 

Desmond Ivana

1602569524

The E-Scooters Wave Is Coming: Steer Your Business To Success

E-scooters are becoming more and more familiar. The compactness, coupled with the skill of evading jam-packed traffics, makes the fast-paced world lean towards this micro-mobility innovation. Besides, with COVID-19 propelling the need for safety and privacy, you do not have drivers in an E-scooters ecosystem! With the system being entirely automated, people can smart-lock and unlock E-scooters without any hassle.

Various top manufacturers are spending quality hours exhaustively on their R&D to shift from fuel-led automobiles to electric power-generating vehicles. Although people hesitate to make investments when it comes to buying an e-vehicle, using such vehicles for commuting is no big deal. If you’re an entrepreneur aiming to launch an Uber for E-Scooters app, now is the time to roll up your sleeves as E-scooters are being legalized in numerous countries, including New York.

Now, let’s discuss the remunerative advantages of E-scooters and why entrepreneurs needn’t hesitate to initiate their E-scooter App development.

Lucrative Benefits of E-Scooters

Outplay traffic effortlessly: One of the main concerns of people worldwide is not reaching the destination on time due to prolonged traffic. With four-wheelers becoming more predominant, the situation is steeping towards the worsening phase. With its compact nature, E-scooters can help people sail past traffic without a sweat. This way, people conserve and utilize their time efficiently.

The environmental impact: As simple as it may sound, automobiles pollute the environment on a massive scale. It is high-time people raise their concerns against environmental degradation. E-scooters are the best alternatives from the environmental perspective. These scooters run on a 500W electric motor, eliminating any form of pollution.

Inexpensive in every aspect: The maintenance and fuel costs of automobiles is way too high as vehicles get older. However, with an E-scooter, all it takes is a rechargeable battery with less or no maintenance at all. Moreover, entrepreneurs get to enhance their profits seamlessly, even after providing economical rides to passengers. There’s only an initial investment cost that an entrepreneur needs to take care of.

The 5-Step Workflow of an E-Scooters App

While building a smartphone application, it is essential to focus on the platform’s workflow. An E-scooter app with a user-friendly architecture and immersive workflow can create an instant impact among the audience. Let’s discuss the simple yet intuitive 5-step workflow here,

  • Users register with the platform and locate E-scooters nearby by enabling their location preferences.

  • Users choose their best-suited E-scooters based on numerous metrics like pricing, battery capacity, ratings, etc.

  • Users unlock the vehicle by scanning the QR code. They initiate their trip and drive towards their destination.

  • Upon reaching the destination, users park the E-scooters securely and smart-lock the vehicle.

  • The app displays the total fare with a detailed breakdown. Users pay the amount via a multitude of payment gateways and share their experience in the form of ratings & reviews.

Features that make the E-Scooter app stand apart

Apps like Lime, Bird, etc., have already set a benchmark when it comes to the E-Scooter app market. You need USPs to lure customer attention. Some of the unique elements worth-considering include,

  • QR scanning - To initiate and terminate rides.

  • In-app wallet - To pay for rides effortlessly.

  • Multi-lingual support - To access the app in the customers’ preferred language.

  • Schedule bookings - To book rides well-in-advance.

  • In-app chat/call - To establish a connection between the support team and users.

  • VoIP-based Call masking - To mask users’ contact details.

  • Geofencing - To map virtual boundaries and keep an eye on E-scooters.

Capitalize on the growing market

Establishing your E-Scooters Rental app at the spur of the moment is highly essential if you wish to scale your business in the shortest possible time. Some of the reasons to initiate your app development right away include,

The unexplored market: The E-Scooter market is still in its nascent stages. Rolling out an app with the right feature-set and approach can help you yield unrestricted revenue.

Competitors are experiencing massive growth: Apps like Lime, Bird, etc., witness unprecedented growth in the past few years. Lime was valued at $2.4 billion in 2019. On the other hand, Bird has spread across 100 cities in Europe. With competitors reaping profits, it is high-time entrepreneurs needn’t hesitate to invest in this business opportunity.

The ‘E’ shift among customers: People are gradually moving towards e-vehicles as a measure to conserve time and environment. By rolling out an on-demand app for E-scooters that is economical, people will inevitably turn towards your platform for the daily commute.

Conclusion

In this modern world, saving time and energy is the need of the hour. Add to that the indispensable role of conserving the environment. E-scooters cater to all these aspects comprehensively. Make the most out of the situation and have no second thoughts about initiating your E-Scooter app development.

#uber for e-scooters #e-scooter app development #e-scooter app #e-scooter rental app #uber like app for e-scooters #uber for e-scooters app

joe biden

1617257581

Software de restauración de Exchange para restaurar sin problemas PST en Exchange Server

¿Quiere restaurar los buzones de correo de PST a Exchange Server? Entonces, estás en la página correcta. Aquí, lo guiaremos sobre cómo puede restaurar fácilmente mensajes y otros elementos de PST a MS Exchange Server.

Muchas veces, los usuarios necesitan restaurar los elementos de datos de PST en Exchange Server, pero debido a la falta de disponibilidad de una solución confiable, los usuarios no pueden obtener la solución. Háganos saber primero sobre el archivo PST y MS Exchange Server.

Conozca PST y Exchange Server

PST es un formato de archivo utilizado por MS Outlook, un cliente de correo electrónico de Windows y muy popular entre los usuarios domésticos y comerciales.

Por otro lado, Exchange Server es un poderoso servidor de correo electrónico donde todos los datos se almacenan en un archivo EDB. Los usuarios generalmente guardan la copia de seguridad de los buzones de correo de Exchange en el archivo PST, pero muchas veces, los usuarios deben restaurar los datos del archivo PST en Exchange. Para resolver este problema, estamos aquí con una solución profesional que discutiremos en la siguiente sección de esta publicación.

Un método profesional para restaurar PST a Exchange Server

No le recomendamos que elija una solución al azar para restaurar los datos de PST en Exchange Server. Por lo tanto, al realizar varias investigaciones, estamos aquí con una solución inteligente y conveniente, es decir, Exchange Restore Software. Es demasiado fácil de manejar por todos los usuarios y restaurar cómodamente todos los datos del archivo PST a Exchange Server.

Funciones principales ofrecidas por Exchange Restore Software

El software es demasiado simple de usar y se puede instalar fácilmente en todas las versiones de Windows. Con unos pocos clics, la herramienta puede restaurar los elementos del buzón de Exchange.

No es necesario que MS Outlook restaure los datos PST en Exchange. Todos los correos electrónicos, contactos, notas, calendarios, etc. se restauran desde el archivo PST a Exchange Server.

Todas las versiones de Outlook son compatibles con la herramienta, como Outlook 2019, 2016, 2013, 2010, 2007, etc. La herramienta proporciona varios filtros mediante los cuales se pueden restaurar los datos deseados desde un archivo PST a Exchange Server. El programa se puede instalar en todas las versiones de Windows como Windows 10, 8.1, 8, 7, XP, Vista, etc.

Descargue la versión de demostración del software de restauración de Exchange y analice el funcionamiento del software restaurando los primeros 50 elementos por carpeta.

Líneas finales

No existe una solución manual para restaurar los buzones de correo de Exchange desde el archivo PST. Por lo tanto, hemos explicado una solución fácil e inteligente para restaurar datos de archivos PST en Exchange Server. Simplemente puede usar este software y restaurar todos los datos de PST a Exchange Server.

Más información:- https://www.datavare.com/software/exchange-restore.html

#intercambio de software de restauración #intercambio de restauración #buzón del servidor de intercambio #herramienta de restauración de intercambio

E-Learning App Development: Types, Cost & Features

The growth of the online modes for students has increased since the pandemic. This growth has been possible with the help of E-learning software systems. This software has shown a future with more opportunities, even in this pandemic. This market will grow to a high of 350 billion dollars by 2025. Due to this pandemic, most education organizations have shifted to online modes. So, naturally, this means the need for E-learning software systems will grow. So, do you have a complete idea for your E-learning applications and are planning to develop one for your organization? E-learning product development is not a very difficult process to handle. To make the process easier for you, we have added the types of e-learning apps, its features, benefits, development cost and much more in this blog. To read more click on the link.

#e-learning web portals #e-learning development companies #development of software for e-learning #e-learning web portalsmobile applications for e-learning #e-learning product development #app development

Desenvolvimento E Implantação De Contratos Inteligentes Tezos

Tezos é uma das blockchains de contrato inteligente mais antigas, sendo a Ethereum a primeira.

Embora o Ethereum seja uma escolha popular entre os desenvolvedores para desenvolver e implantar contratos inteligentes, seus aplicativos não são muito escaláveis ​​devido a altas taxas e transações lentas. Em contraste, os aplicativos Tezos são muito eficientes e baratos de configurar.

Neste guia, você aprenderá como desenvolver e implantar contratos inteligentes no Tezos com SmartPy CLI. 

Você pode obter o código do projeto final neste repositório do GitHub .

Pré-requisitos

Para acompanhar este artigo, você precisa estar familiarizado com a blockchain Tezos. Seu conhecimento não precisa ser aprofundado.

O conhecimento do blockchain Ethereum não é necessário, mas ajuda muito.

O que é Tezos?

Tezos é uma rede blockchain e uma plataforma de contrato inteligente construída para ser adaptável por meio de seu modelo de governança e capacidade de autoatualização.

Embora Tezos e Ethereum sejam blockchains semelhantes que suportam contratos inteligentes e desenvolvimento de DApp, eles são diferentes de várias maneiras. A tabela Tezos vs. Ethereum abaixo mostra algumas das diferenças entre as duas redes.

Tezos vs. Ethereum: um gráfico de comparação

TezosEthereum
Desenvolvedores fazem propostas para atualizar o protocolo blockchain na redeOs desenvolvedores usam um hardfork para atualizar o protocolo blockchain
As partes interessadas controlam as atualizações do protocolo blockchain votando para aceitar ou recusar propostasOs criadores da rede blockchain governam atualizações para o protocolo blockchain
Usa verificação formal para executar contratos inteligentesUsa EVM para armazenar e executar contratos inteligentes na rede
Os participantes (nós) têm a opção de fornecer recursos de computação ou delegar seus tokens para participar da validação de transaçõesTodos os participantes (nós) devem fornecer recursos de computação e apostar suas moedas para participar da validação de transações
As taxas de gás são baixas, o que o torna muito escalávelAs taxas de gás são muito altas, o que o torna inescalável

O que é SmartPy?

SmartPy é uma ferramenta que permite construir contratos inteligentes facilmente na blockchain Tezos.

Você escreve contratos no SmartPy usando Python. Se você já estiver familiarizado com o Python, não precisará aprender uma nova linguagem de programação de contrato inteligente .

O SmartPy vem em duas outras variantes que usam outras sintaxes: SmartTS, que usa TypeScript, e SmartML, que usa OCaml.

SmartPy compila scripts Python para Michelson. Michelson é uma linguagem de programação de baixo nível para contratos inteligentes em Tezos. SmartTS e SmartML também podem ser compilados usando a ferramenta SmartPy.

O que são contratos inteligentes?

Contratos inteligentes são programas que você pode construir, implantar e executar em uma rede blockchain. Você não precisa possuir um nó na rede antes de implantar seu contrato inteligente.

Com contratos inteligentes, você pode criar aplicativos acessíveis a todos os dispositivos sem possuir ou manter um servidor. Esses aplicativos totalmente descentralizados exigem pouca ou nenhuma manutenção.

Contratos inteligentes usam todo o potencial das blockchains, permitindo que você execute programas na cadeia e interaja com a própria cadeia. Você pode manter ou transferir tokens e acessar funcionalidades especializadas no blockchain com um contrato inteligente.

Introdução ao SmartPy CLI

Para instalar o SmartPy CLI, execute o comando abaixo:

$ bash <(curl -s https://smartpy.io/cli/install.sh)

Este comando cria um smartpy-clidiretório homecom esta estrutura em árvore:

smartpy-cli
├── browser.py
├── node_modules/
├── originator.js
├── package.json
├── package-lock.json
├── __pycache__/
├── smart.css
├── smart.js
├── smartpyc.js
├── smartpyc.py
├── smartpyio.py
├── smartpy.py
├── SmartPy.sh
├── smarttop/
├── smart-ts-cli.js
├── templates/
├── theme.js
└── typography.css

Para confirmar a instalação, execute o seguinte:

$ ~/smartpy-cli/SmartPy.sh --version

Como uma etapa extra para facilitar o SmartPy.shacesso, crie um alias copiando o abaixo em seu .bashrcarquivo ou arquivo de perfil relacionado:

$ alias smartpy="$HOME/smartpy-cli/SmartPy.sh"

Agora você pode usar:

$ smartpy --version

Ao invés de:

$ ~/smartpy-cli/SmartPy.sh --version

Configurandotezos-client

Este guia usa tezos-clientpara interagir com um contrato inteligente implantado. Para instalar tezos-client,execute um dos comandos abaixo, dependendo se você estiver usando um sistema operacional Mac ou Linux:

# Mac
$ brew tap serokell/tezos-packaging-stable https://github.com/serokell/tezos-packaging-stable.git
$ brew install tezos-client

# Linux
$ wget https://github.com/serokell/tezos-packaging/releases/latest/download/tezos-client
$ chmod +x tezos-client
$ mkdir -p $HOME/.local/bin
$ mv tezos-client $HOME/.local/bin
$ echo 'export PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc
$ source $HOME/.bashrc

Observe que, se você estiver usando o Windows, precisará instalar uma distribuição do Linux com wsl e executar a instalação do Linux.

Após a instalação tezos-client, você precisa configurá-lo. Comece executando o comando abaixo:

$ tezos-client --endpoint https://jakartanet.ecadinfra.com config update

Este guia usa a rede de teste Jarkatanet para implantar e interagir com um contrato inteligente. O comando acima se conecta tezos-clientà rede de teste Jakartanet através do nó https://jakartanet.ecadinfra.comna rede.

Antes de realizar qualquer operação com tezos-client, você precisa conectar uma conta. A Tezos fornece contas Faucet que permitem interagir com a rede gratuitamente.

Você precisa visitar o site Jakartanet Faucet e baixar o arquivo Faucet. Depois de fazer isso, abra a pasta de download no seu terminal e execute este comando:

$ tezos-client activate account faucet with ./jakartanet.json

O comando ativa a conta Faucet no seu tezos-cliente lhe dá um alias faucet. Para verificar o saldo desta conta, abra o jakartanet.jsonarquivo, copie o valor de pkhe execute este comando:

$ tezos-client get balance for <address>

Substitua <address>pelo pkhvalor que você copiou.

Observe que as contas Tezos Faucet estão disponíveis publicamente para todos e têm uma quantidade limitada de tokens Tez, então você deve regular seu uso.

Desenvolvendo um contrato inteligente Tezos com SmartPy

Para começar a criar nosso contrato inteligente de exemplo, crie um novo store_text.pyarquivo e copie o abaixo nele:

import smartpy as sp

class StoreText(sp.Contract):
    def __init__(self, value):
        self.init(text = value)

    @sp.entry_point
    def replace(self, params):
        self.data.text = params.text

    @sp.entry_point    # Note: the spaces before "@"
    def append(self, params):
        self.data.text += params.text

Veja como funciona o contrato acima, peça por peça:

Primeiro, importamos a smartpybiblioteca:

import smartpy as sp

Então, definimos uma classe que estende sp.Contract:

class StoreText(sp.Contract):

Por fim, definimos alguns itens dentro do contrato inteligente; primeiro, um construtor para inicializar text:

    def __init__(self, value):    # Note: the spaces before "def"
        self.init(text = value)

Segundo, um ponto de entrada para substituir o valor de text:

    @sp.entry_point    # Note: the spaces before "@"
    def replace(self, params):
        self.data.text = params.text

Terceiro, um ponto de entrada para anexar uma string a text:

    @sp.entry_point    # Note: the spaces before "@"
    def append(self, params):
        self.data.text += params.text

Em seguida, vamos dar uma olhada em como testar o contrato inteligente.

Testando o contrato inteligente da Tezos

Os contratos inteligentes implantados no Tezos não podem ser alterados ou removidos. Isso pode ser um problema porque pode haver erros no contrato, e os erros podem levar a erros dispendiosos e à perda de fundos.

O SmartPy oferece a capacidade de testar facilmente seu contrato antes da implantação. Testar o contrato não requer nenhum token ou uma conta de carteira para ser executado. Tudo que você precisa fazer é abrir o store_text.pyarquivo e copiar abaixo dele:

@sp.add_test(name = "StoreText")
def test():
  scenario = sp.test_scenario()
  contract = StoreText("Hello")
  scenario += contract

  scenario.verify(contract.data.text == "Hello")

  contract.replace(text = "Hi")
  contract.append(text = ", there!")
  scenario.verify(contract.data.text == "Hi, there!")

Veja como o trecho funciona. Primeiro, registramos a testfunção como um script de teste:

@sp.add_test(name = "StoreText")

Então, definimos a testfunção:

def test():

Nas linhas restantes, criamos um cenário de teste:

  scenario = sp.test_scenario()

Inicializou o contrato com "Hello":

  contract = StoreText("Hello")

Adicionada a instância do contrato ao cenário:

  scenario += contract

Verificado que o textvalor do contrato é "Hello":

  scenario.verify(contract.data.text == "Hello")

Chamado os pontos de entrada replacee :append

  contract.replace(text = "Hi")
  contract.append(text = ", there!")

E por fim, verificou que o textvalor do contrato passou a ser "Hi, there":

  scenario.verify(contract.data.text == "Hi, there!")

Após adicionar o teste, salve o arquivo e execute este comando:

$ ~/smartpy-cli/SmartPy.sh test store_text.py ./test-output

Se o teste for bem-sucedido, o compilador não lançará uma mensagem de erro.

Compilando o contrato inteligente para Michelson

Antes de implantar seu contrato inteligente, você precisa compilá-lo para Michelson. Como mencionado anteriormente, Michelson é uma linguagem de programação de baixo nível usada para contratos inteligentes na blockchain Tezos.

Para compilar store_text.py, execute o seguinte:

$ ~/smartpy-cli/SmartPy.sh compile message.py ./output

Se compilado com sucesso, você deverá ver uma outputpasta como a abaixo:

output/
├── scenario.json
├── script_init.py
├── script_pure.py
└── storeMessage/
    ├── log.txt
    ├── step_000_cont_0_contract.json
    ├── step_000_cont_0_contract.py
    ├── step_000_cont_0_contract.tz
    ├── step_000_cont_0_sizes.csv
    ├── step_000_cont_0_storage.json
    ├── step_000_cont_0_storage.py
    ├── step_000_cont_0_storage.tz
    └── step_000_cont_0_types.py

O outputdiretório contém todos os arquivos necessários para implantar o contrato inteligente.

Como implantar o contrato inteligente da Tezos

Para deploy store_text.py, abra a output/storeMessagepasta no terminal e execute o comando abaixo:

$ ~/smartpy-cli/SmartPy.sh originate-contract --code step_000_cont_0_contract.json --storage step_000_cont_0_storage.json --rpc https://jakartanet.ecadinfra.com

[INFO] - Using RPC https://jakartanet.ecadinfra.com/...
[INFO] - Contract KT1………………CAjjW originated!!!

Veja como o comando funciona:

  • originate-contractdiz tezos-clientpara implantar (“originar”) um contrato
  • --code step_000_cont_0_contract.jsonaponta para o arquivo de contrato compilado
  • --storage step_000_cont_0_storage.jsonaponta para o arquivo de armazenamento compilado
  • --rpc https://jakartanet.ecadinfra.comaponta para um nó RPC na rede que você está implantando

Os contratos inteligentes da Tezos geralmente envolvem dois componentes: o armazenamento e o contrato. O armazenamento contém os dados que o contrato armazena e o contrato contém a lógica do contrato inteligente.

Observe que você pode implantar o contrato com qualquer uma das compilações de contrato ou armazenamento. Eles só precisam ter a mesma extensão de arquivo quando você estiver usando o comando.

Por padrão, se você estiver implantando em uma rede de teste, o compilador usará uma conta Faucet. Se você estiver implantando na rede principal ou quiser usar sua conta de carteira, adicione o --private-keysinalizador seguido pela chave privada da conta.

Interagindo com o contrato inteligente implantado

Antes de interagir com o contrato inteligente implantado, você precisa saber como o contrato está atualmente. Para fazer isso, abra o SmartPy Explorer no seu navegador e siga estas etapas:

  1. Navegue até "Nós alternativos"
  2. Cole o endereço do contrato na entrada “Contrato”
  3. Em "Explorar em um nó específico", alterne de mainnetparajakartanet
  4. Cole o URL RPC https://jakartanet.ecadinfra.comna caixa de texto
  5. Clique em “Explorar em um nó específico”

Quando os dados do contrato aparecerem, o armazenamento de texto deverá ser exibido como “Hello, There!”

Agora que você conhece o texto do contrato, pode alterá-lo para "Oi, pronto!" chamando o replaceponto de entrada com este comando:

$ tezos-client transfer 0 from faucet to <contract-address> --entrypoint replace --arg '"Hi, There!"'

Se o comando foi bem-sucedido, ao atualizar o explorer, o armazenamento agora deve exibir “Oi, pronto!”

Observe que você deve substituir <contract-address>pelo endereço do contrato implantado antes de executar o comando.

Conclusão

Este artigo aborda o processo de construção de contratos inteligentes no Tezos com SmartPy. A criação de contratos inteligentes permite que você aproveite ao máximo a rede blockchain para criar aplicativos e organizações descentralizadas.

Espero que este artigo tenha ajudado você a entender o processo de construção de contratos inteligentes no Tezos. Se você quiser ler mais sobre contratos inteligentes, confira este artigo sobre erros de contratos inteligentes a serem evitados.

Obrigado por ler! E tenha um ótimo dia. Desenvolvimento e implantação de contratos inteligentes Tezos

Fonte: https://blog.logrocket.com/developing-deploying-tezos-smart-contracts/

#tezos  #smartpy