Construye dApps de Blockchain usando JavaScript

This ad is not shown to multipass and full ticket holders
JSNation US
JSNation US 2025
November 17 - 20, 2025
New York, US & Online
See JS stars in the US biggest planetarium
Learn More
In partnership with Focus Reactive
Upcoming event
JSNation US 2025
JSNation US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

¿Hemos encontrado el nirvana para los desarrolladores de Blockchain? Esta masterclass se centrará en construir dApps (aplicaciones distribuidas) de blockchain con un conjunto de código fuente y desplegarlo en múltiples blockchains. La sesión cubrirá cómo empezar con Reach y ser capaz de desplegar la misma solución en múltiples blockchains, incluyendo Algorand, Ethereum y Conflux. ¿Eres nuevo en Reach? Cubriremos cómo configurar tu entorno de desarrollo y también recorreremos una aplicación simple de frontend y backend. Por último, veremos uno de los enormes beneficios de Reach en el proceso de verificación incorporado. Reach proporciona verificaciones automáticas para asegurar que tu programa no pierda, bloquee o gaste en exceso fondos, y garantiza que tus aplicaciones estén libres de esta categoría completa de errores.

This talk has been presented at JSNation 2022, check out the latest edition of this JavaScript Conference.

FAQ

Una DApp significa aplicación descentralizada. Se pueden construir utilizando JavaScript y otros lenguajes de programación, interactuando con la blockchain para realizar transacciones y manejar contratos inteligentes.

Con blockchain se pueden crear diversas soluciones como DeFi (finanzas descentralizadas), stablecoins, intercambios descentralizados (DEXs), y sistemas de derechos de autor utilizando NFTs, entre otros.

Algorand es una blockchain que utiliza un protocolo de prueba de participación puro, destacando por su velocidad y escalabilidad. Soporta 1400 transacciones por segundo y los bloques se crean en menos de 5 segundos. Es energéticamente eficiente y ofrece costos de transacción extremadamente bajos.

Los contratos inteligentes en Algorand utilizan un lenguaje ensamblador llamado TEAL, eficiente para operar en la cadena de bloques. También se pueden usar otros lenguajes como Python y JavaScript a través de compiladores que generan TEAL.

Los stablecoins son criptomonedas vinculadas a la economía de un activo estable, como el dólar estadounidense. Fluctúan de la misma manera que el activo al que están vinculados, ofreciendo menos volatilidad que otras criptomonedas.

En Algorand, los tokens fungibles son aquellos que tienen el mismo valor entre sí, como las monedas estables o puntos de lealtad. Los tokens no fungibles (NFTs) son únicos y se utilizan para representar artículos de juegos, bienes raíces, identidad, entre otros.

Los contratos inteligentes en Algorand se verifican mediante auditorías que aseguran su correcto funcionamiento y previenen problemas como los tokens bloqueados. Estas auditorías son críticas para garantizar la seguridad y la integridad del contrato.

Russell Fustino
Russell Fustino
21 min
20 Jun, 2022

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Hola, mi nombre es Russ Fustino, y bienvenidos a Construye dApps de Blockchain usando JavaScript. Cubriremos la blockchain de Algorand, la capa uno, configuración de tu entorno de desarrollo, creación de una dApp simple, verificación y controles de UI desde pipeline. Las herramientas de blockchain ahora están al alcance de cualquiera para crear agrupaciones de liquidez, staking y más. La Sociedad Italiana de Autores y Editores está utilizando NFTs en la blockchain de Algorand para identificar derechos de autor. Las cuentas de Algorand, ASAs, Transacciones Atómicas, Contratos Inteligentes de Algorand e informes con Indexer son parte de la solución. La creación de NFTs se puede hacer utilizando herramientas visuales como Algodesk.io y billeteras como Algosigner y MyAlgoWallet. Las transferencias atómicas de Algorand garantizan el intercambio de bienes y facilitan aplicaciones descentralizadas. Las firmas inteligentes aprueban transacciones de gasto y los contratos inteligentes facilitan el almacenamiento global y local. La arquitectura de la dApp incluye una interfaz de usuario (UI) en el frontend, transacciones de pago entre cuentas, transacciones de activos para NFTs y Tokens Fungibles, y llamadas de aplicación para contratos inteligentes. Varios SDKs y herramientas están disponibles, como AlgoDesk.io, Algorand Studio y Algodia. Reach es un lenguaje de alto nivel y un compilador para desplegar dApps en la blockchain. La verificación y las auditorías juegan un papel crucial en la prevención de tokens bloqueados. La interfaz de usuario de Pipeline ofrece controles y componentes para una integración fácil en soluciones.

1. Introduction to Algorand Blockchain and DApps

Short description:

Hola, mi nombre es Russ Fustino, y bienvenidos a Construir DApps de Blockchain utilizando JavaScript. Cubriremos la blockchain de Algorand, la capa uno, configuración de tu entorno de desarrollo, creación de una DApp simple, verificación y controles de UI desde pipeline. Las herramientas de blockchain ahora están al alcance de cualquier persona para crear agrupaciones de liquidez, staking y más. La Sociedad Italiana de Autores y Editores está utilizando NFTs en la blockchain de Algorand para identificar derechos de autor. Las cuentas de Algorand, ASAs, Transacciones Atómicas, Contratos Inteligentes de Algorand e informes con Indexer son parte de la solución. La creación de NFTs se puede hacer utilizando herramientas visuales como Algodesk.io y billeteras como Algosigner y MyAlgoWallet. Las transferencias atómicas de Algorand garantizan el intercambio de bienes y facilitan aplicaciones descentralizadas. Las firmas inteligentes aprueban transacciones de gasto y los contratos inteligentes facilitan el almacenamiento global y local. La arquitectura de la DApp incluye una interfaz de usuario (UI) en el front-end, transacciones de pago entre cuentas, transacciones de activos para NFTs y Tokens Fungibles, y llamadas de aplicación para contratos inteligentes. Varios SDKs y herramientas están disponibles, como AlgoDesk.io, Algorand Studio y Algodia. Reach es un lenguaje de alto nivel y compilador para implementar DApps en la blockchain. La verificación y auditorías juegan un papel crucial en la prevención de tokens bloqueados. La interfaz de usuario de Pipeline ofrece controles y componentes para una integración fácil en soluciones.

Hola, mi nombre es Russ Fustino, y bienvenidos a Construir DApps de Blockchain utilizando JavaScript. Soy un defensor del desarrollo para Algorand.

Entonces, los desarrolladores de blockchain necesitan saber, en primer lugar, ¿qué es una DApp? ¿Y cómo puedo construir una? Además, ¿qué tipo de soluciones puedo construir? Sé que cuando comencé a hacer desarrollo de blockchain, esa fue una pregunta que estaba en mi mente, ¿qué tipo de soluciones puedo construir? ¿Y qué lenguajes de programación puedo usar para construir DApps? ¿Y cómo verifico los contratos inteligentes, en otras palabras, auditorías?

Entonces, la agenda para hoy, vamos a cubrir la blockchain de Algorand, la capa uno. Haremos un poco sobre la configuración de tu entorno de desarrollo y luego crearemos una DApp simple, que por cierto, significa aplicaciones descentralizadas. Y cubriremos la verificación, así como algunos controles de UI desde pipeline.

Para aquellos que son nuevos en blockchain, lo que es blockchain, es un libro mayor mutable y descentralizado que consiste en bloques, que son períodos de tiempo. Y luego las transacciones que están asociadas durante ese intervalo de tiempo. Ahora, por supuesto, las transacciones son entre un remitente y un receptor. Así que esos serían tus cuentas. Y cada cuenta tiene la asociación de activos, así como aplicaciones. Ahora, los activos pueden ser tus tokens fungibles o no fungibles, y las aplicaciones son contratos inteligentes. Con Algorand, utilizamos un protocolo de prueba de participación puro. El protocolo de prueba de participación puro es extremadamente rápido y realmente escala. Se mantiene en 1400 transacciones por segundo y los tiempos de bloque se crean en menos de 5 segundos. Pero no solo eso, hay una longevidad de infraestructura. Todo el proyecto es de código abierto, y hay mucha flexibilidad técnica con todo tipo de SDKs y herramientas que se están creando y están disponibles para que los desarrolladores construyan soluciones de blockchain. Certeza de transacción, no hay bifurcaciones en la blockchain de Algorand. Plataforma muy extensible y extremadamente eficiente en energía. En realidad, es una blockchain con huella de carbono negativa. Eficiencia de costos, el costo de una transacción es inferior a 1/120 de un centavo. También proporciona seguridad real, porque es un libro mayor de solo lectura y escritura única que está distribuido en todo el mundo. DeFi es, con mucho, el mayor tipo de solución de mercado vertical que se puede construir con la blockchain de Algorand. Stablecoins. Entonces, ¿qué son las stablecoins? Todavía son criptomonedas, pero están vinculadas a la economía de Estados Unidos. A medida que el dólar estadounidense sube y baja, también lo hará la moneda. Por lo tanto, fluctúa de la misma manera que lo hace el dólar. Así que hay más de 3 mil millones en circulación allí para USDC. Y tenemos intercambios descentralizados o DEXs. Cosas como Tinyman, Elgodex, ElgoFi. Lo que ha sucedido aquí es que, hasta ahora, tenías que ir a un banco para usar herramientas financieras.

2. Herramientas de Blockchain y NFTs para Derechos de Autor

Short description:

Las herramientas de blockchain ahora están al alcance de cualquier persona para crear agrupaciones de liquidez, staking y más. La Sociedad Italiana de Autores y Editores está utilizando NFTs en la blockchain de Algorand para identificar derechos de autor. Esto abre nuevas posibilidades para el acceso global y casos de uso en varios mercados verticales.

Por ejemplo, digamos que quieres crear una cartera de acciones. Bueno, ahora estas mismas herramientas están disponibles para cualquier persona que quiera usarlas. Y puedes ir a sitios como estos, y aplicaciones como estas, para poder crear agrupaciones de liquidez y staking, y muchas otras cosas.

La Sociedad Italiana de Autores y Editores, otra gran implementación de blockchain. Están utilizando NFTs para identificar derechos de autor. Entonces, los NFTs son únicos, y puedes ver aquí que han puesto más de 4 millones de NFTs en la blockchain de Algorand para casi 100,000 creadores. Realmente, este es el futuro de la industria para hacer derechos de autor, porque piensa en ello, no hay fronteras globales. Esto es, y está al alcance de cualquier persona que quiera tener acceso a ello. Y otros casos de uso, ya sabes, la lista continúa aquí, ¿verdad? Muchos mercados verticales diferentes, prácticamente todos los mercados verticales que realmente tienen un caso de uso para una blockchain.

3. Cuentas de Algorand, ASAs y NFTs

Short description:

La capa 1 de tu solución incluye cuentas de Algorand, ASAs, Transacciones Atómicas, Contratos Inteligentes de Algorand e informes con Indexer. Los tokens fungibles, como las monedas estables y los puntos de lealtad, tienen unidades de igual valor. Los tokens no fungibles (NFTs) son objetos de colección únicos utilizados para artículos de juegos, bienes raíces, identidad, certificación y más. La creación de NFTs se puede realizar utilizando herramientas visuales como Algodesk.io y billeteras como Algosigner y MyAlgoWallet.

Pasemos a la siguiente sección, que es el corazón y alma de tu solución, la capa 1. Las cuentas de Algorand, ASAs o Algorand Standard Assets, Transacciones Atómicas, Contratos Inteligentes de Algorand y los informes con Indexer. Primero, tienes una cuenta estándar, que representa a un individuo, por ejemplo. También tienes una cuenta multisig, que podría representar, por ejemplo, a una junta directiva. Con una cuenta multisig, tienes la capacidad de definir un umbral, es decir, cuántos votos necesitas del grupo para aprobar o firmar la transacción. Luego, una logicsig o cuenta lógica es un contrato inteligente que devuelve verdadero o falso. Si devuelve verdadero, firmará la transacción; si devuelve falso, no lo hará.

Ahora hablaremos de los tokens fungibles y qué son exactamente. Los ASAs o Algorand Standard Assets pueden ser tokens fungibles o no fungibles. Aquí vemos una lista de ejemplos de tokens fungibles, como monedas estables, puntos de lealtad y crédito del sistema. Cada unidad de la criptomoneda tiene exactamente el mismo valor y puede haber varias de ellas. Por otro lado, en cuanto a los tokens no fungibles, se pueden utilizar para artículos de juegos, bienes raíces, identidad, certificación y objetos de colección. La mejor manera de pensar en los NFTs es que son como objetos de colección. Son únicos y uno de una clase. Algunas personas coleccionan tarjetas de béisbol o monedas, por ejemplo. Cada uno de ellos está en una condición diferente, tiene una rareza diferente y diferentes características. Todos estos son metadatos que se pueden utilizar para diferenciarlos. Son todos muy, muy únicos.

Echemos un vistazo a cómo crear uno de estos. Voy a abrir Algodesk.io, que es una herramienta visual. Vamos a utilizar una de nuestras tres billeteras disponibles aquí. Tenemos Algosigner, que es un complemento para Chrome, y MyAlgoWallet, que es una billetera basada en la web.

4. Creación de ASAs y Transferencias Atómicas de Algorand

Short description:

PairWallet es una billetera basada en Android o IRS. Utilizaremos Algosigner para la demostración y seleccionaremos una cuenta para crear activos. Crearemos un ASA llamado pizza, un token fungible con un suministro de 100,000. Las transferencias atómicas de Algorand garantizan el intercambio de bienes y facilitan las aplicaciones descentralizadas. Los Contratos Inteligentes utilizan Teal, un lenguaje ensamblador, y se pueden generar utilizando Python y JavaScript.

Y luego, PairWallet es una billetera basada en Android o IRS. Vamos a utilizar Algosigner aquí para la demostración. Vamos a iniciar sesión en nuestra billetera y voy a seleccionar una cuenta que está en nuestra para utilizarla y crear estos activos.

Entonces, lo que vamos a hacer ahora es crear un ASA. Tenemos la capacidad de crear un nombre de prueba. Vamos a darle el nombre de pizza. Después de la primera transacción en Bitcoin fue para pizza. Ahora, si hago un suministro de uno, eso sería un NFT. Así que lo que voy a hacer es crear un token fungible. Vamos a crear 100,000 de estos. También tenemos la capacidad de poner un punto decimal allí. También tenemos la capacidad de poner una URL que podría estar asociada con esto, más información y también un meta sombrero.

A continuación, hablemos de las transferencias atómicas de Algorand. Aquí es donde todo debe tener éxito o todo fallará. Tienes una persona A, por ejemplo, que quiere enviar 50 Algos a la persona B. Y luego, la persona B, a cambio, enviará una entrada de concierto a la persona A. Cuando solíamos hacer esto a través de cosas como Craigslist o algo así, siempre era una lotería si esto realmente iba a funcionar o no. A veces pagabas el dinero, pero no recibías la entrada. Aquí, las transferencias atómicas garantizan el intercambio de bienes. Y esto realmente facilita y es el ingrediente secreto para muchas soluciones que se construyen con aplicaciones descentralizadas. Muy fácil de hacer y es seguro. Algunos ejemplos de esto serían liquidaciones simplificadas aceleradas, operaciones circulares, pagos grupales, liquidación instantánea para transacciones de activos multiparte complejas, pagos distribuidos. Y nuevamente, estos se pueden utilizar con todas las demás características de la Capa 1 de Algorand, como los activos estándar y los Contratos Inteligentes.

Hablando de eso, Contratos Inteligentes. Este es el lenguaje de aprobación de ejecución de transacciones, es el lenguaje ensamblador que se utiliza. El nombre corto para eso es Teal. Y es ensamblador porque es muy eficiente y tiene que funcionar en la cadena de bloques y ser muy, muy escalable. No hay nada más eficiente que el ensamblador para hacer eso. Y luego tienes un compilador habilitado para Python, que puedes usar Python para generar Teal y también se utiliza JavaScript en un producto llamado Rea. Y también hay una nueva extensión de Visual Studio que utiliza C sharp para crear Teal.

5. Smart Signatures, Contracts, and DApp Architecture

Short description:

Las firmas inteligentes aprueban transacciones de gasto y los contratos inteligentes facilitan el almacenamiento global y local. La arquitectura de la DApp incluye una interfaz de usuario (UI) en el front-end, transacciones de pago entre cuentas, transacciones de activos para NFT y tokens fungibles, y llamadas de aplicación para contratos inteligentes. El índice es una base de datos Postgres SQL que descarga el proceso Algod y sirve como una herramienta de informes.

Estos son básicamente generadores de Teal. Cada uno de estos productos que acabo de mencionar y más están en camino. Las firmas inteligentes básicamente aprueban transacciones de gasto y luego los propios contratos inteligentes proporcionan las transacciones y facilitan tanto el almacenamiento global como el local. El almacenamiento local estaría a nivel de cuenta y el almacenamiento global estaría a nivel de blockchain. Todos estos se pueden combinar con otras tecnologías de Algorand incluyendo transferencias atómicas y activos de algoritmo.

Entonces, para resumir la arquitectura de la DApp, básicamente tienes una interfaz de usuario (UI) en el front-end, tal vez haya algunas firmas inteligentes sucediendo allí utilizando los SDK o API REST de Algorand. Y luego tienes tres tipos diferentes de transacciones que se muestran aquí. Tienes una transacción de pago que sería entre tus cuentas. Las transacciones de activos girarían en torno a NFT y tokens fungibles. Y luego las llamadas de aplicación serían tus contratos inteligentes y estos facilitarían el estado local y el estado global en la blockchain. Entonces, el índice es básicamente una base de datos Postgres SQL que descarga el proceso Algod. Y luego se indexa y se puede buscar y es mucho más rápido y receptivo. Así que es realmente una buena herramienta de informes.

6. Setup Development Environment and Tools

Short description:

A continuación, cubriremos la configuración del entorno de desarrollo, incluyendo el portal del desarrollador, Algorand Discord, sandbox y la red privada de Vultr. Hay varios SDK y herramientas disponibles, como AlgoDesk.io, Algorand Studio y Algodia. Exploraremos PyTL y el proceso de compilación de código Python. En JavaScript, instalaremos el sandbox y el SDK, seguiremos la guía paso a paso y crearemos cuentas. Por último, presentaremos Reach, un lenguaje de alto nivel y un compilador para implementar DApps en la blockchain.

Ok, a continuación vamos a cubrir la configuración del entorno de desarrollo y lo que implica. Lo primero que debes hacer es acceder al portal del desarrollador, developer.algorand.org, un portal galardonado para desarrolladores en el espacio de la blockchain. También está Algorand Discord, donde puedes registrarte y obtener un excelente soporte para responder tus preguntas. También hay un servidor de Discord para Reach. Ambos están aquí también. Lo primero que quiero hacer es cargar el sandbox, muy sencillo. Solo crea una instancia de Docker y luego clona el repositorio de GitHub para el sandbox. También está la red privada de Vultr, que incluye Indexer, que está ejecutando un sandbox. También admite otras redes, como la beta net, test net y main net. Todas estas son compatibles con el uso del sandbox. Se mencionan algunos SDK, los que están resaltados en rojo son compatibles con Algorand. Los que están debajo, como Rust, PHP, Dart, C#, Swift y otros, son compatibles con la comunidad y el ecosistema. Hay muchas herramientas excelentes a la derecha, incluyendo AlgoDesk.io. También viste Algorand Studio. Algodia es una herramienta realmente útil para un desarrollo rápido con una cantidad mínima de código.

Con PyTL, básicamente tienes Python y luego lo compilas y devuelve TL, como se muestra a la derecha. Hay un excelente curso de PyTL en YouTube, con una lista de reproducción muy útil y un excelente trabajo del instructor. Tu primera transacción, vamos a ver esto en JavaScript. Vamos a abrir esta página en el portal del desarrollador. Si te desplazas hacia abajo, te dará los pasos para comenzar. Aquí es donde instalas el sandbox, como mencionamos, y aquí es donde instalas el SDK para JavaScript. Puedes ver la información allí, hay videos sobre cada uno de ellos. También hay una demostración en vivo que puedes probar haciendo clic en el botón de ejecutar. Verás cómo se ejecuta todo. Luego comienzas a trabajar en el código y a crear cuentas e instanciar tus clientes. Esto nos lleva a Reach. ¿Qué es Reach? Bueno, es un lenguaje de programación, es un lenguaje de alto nivel y también es un compilador que implementa tu DApp en la blockchain.

7. Reach Programming and Solution Deployment

Short description:

Los programadores de Reach se centran en la lógica empresarial, mientras que el backend se encarga de generar e implementar soluciones en la blockchain. El frontend proporciona una interfaz de usuario para crear cuentas y ejecutar métodos tradicionales del SDK de Algorand. Es fácil de instalar y requiere Docker y el ejecutable de Reach.

Entonces, el enfoque está en la lógica empresarial. Por lo tanto, los programadores de Reach no necesitan preocuparse por los detalles de cosas como el almacenamiento de contratos, diagramas de protocolo, validación del estado, detalles de la red. Así que tienes el backend. Empezaremos allí, en la parte derecha. Puedes ver que es responsable de generar e implementar la solución en la blockchain. Además, interactúa automáticamente con los contratos inteligentes. Es una implementación de solución. Define las interfaces para el frontend con las que vas a interactuar, y defines cosas como participantes y APIs así como verificación y compromiso.

En el frontend, ahora el frontend puede hacerse, el backend es como código similar a JavaScript. Muy bien, y en el frontend, esto se puede hacer en Python, Go o JavaScript o C-sharp. Y básicamente lo que tienes aquí es una interfaz de usuario que se proporciona, y hace cosas como crear cuentas y muchos métodos tradicionales del SDK de Algorand. También puedes poner código específico de la blockchain allí, por lo que si tienes algo que es ligeramente diferente entre blockchains, también puedes ajustarlo un poco en el frontend. Puedes compilarlo, ejecutarlo, y luego implementarlo en la blockchain. Muy bien, es bastante fácil de instalar. Solo tienes que abrir Docker, descargar el ejecutable de Reach, y si estás ejecutando esto en Windows, necesitarías el subsistema de Windows para Linux, y luego, este es el código que escribes aquí, creas tu directorio para el proyecto, y luego descargas el ejecutable de Reach, dándole permisos de ejecución.

8. DAP Walkthrough and Verification

Short description:

Un recorrido simple por DAP. Archivo de backend con interacción de jugadores, reglas y resultado. Implementación de frontend, adjunto de contrato y métodos de interacción. La verificación protege contra ataques a la blockchain y garantiza que el saldo del contrato sea cero.

Un recorrido simple por DAP. Así que aquí estamos viendo el archivo de backend. Entonces, ya sea el jugador Bob o Ellis, obtienen los dedos que jugaron y hacen una suposición, y ven quién ganó el juego. Y puedes ver que en la parte superior está realmente, eso es solo la interfaz de los métodos que están definidos en el frontend. Y también tienes otros participantes que están involucrados, ¿verdad?

Entonces, al final del juego, se obtienen los dedos lanzados y la suposición total, y se publican, y luego `commit` significa que has terminado. Estás comprometiendo eso en la blockchain. Entonces, el backend ahora también continúa con las reglas y el resultado. Así que esta es la lógica de un juego. Tengo un juego que te voy a mostrar aquí, Mora, donde lanzas los dedos y haces una suposición entre los dos oponentes. Y si alguno de ellos lo adivina correctamente, entonces ganan ese partido en particular. Así que al hacer esto, todos están de acuerdo en las reglas para el resultado, y todos ven el resultado del motor que tenemos.

Ahora en el frontend, tomas el número común de 10, por ejemplo, en cualquier plataforma nativa compatible. Entonces tomas, por ejemplo, 10 algos, los conviertes en micro-algos. Y luego tienes la capacidad de crear una nueva cuenta de prueba en el entorno de desarrollo con ese saldo inicial. Y luego ves abajo, aquí es donde Alice está implementando el contrato. Y luego Bob se va a unir al contrato, en otras palabras, optar por participar, y luego seguimos adelante y ejecutamos el juego. Y luego también, estos son los métodos de interacción. Así que vimos las interfaces de estos en el backend, y ahora este es el código real en el JavaScript en el frontend que proporciona esto. Así que puedes ver que solo estamos usando algunas funciones aleatorias.

A continuación, hablemos de la verificación. Este es un tema muy, muy importante. Y esto es lo que hace, protege contra ataques a la blockchain. Y garantiza cosas como que el saldo del contrato sea cero. Porque piénsalo, estás creando cuentas sobre la marcha potencialmente en estos contratos. Y ahí estás financiándolos. Y si se crea sobre la marcha, está en el contrato, solo ese contrato sabe cuál es la clave privada, ¿verdad? Nadie más lo sabría. Y si el contrato termina de ejecutarse y todavía hay fondos en esa cuenta y no se han agotado, ¿adivina qué? Vas a perder esos fondos. No hay forma de acceder a ellos porque el contrato termina de ejecutarse, desaparece. Y sabes que eso es un problema, es un inconveniente. Y ha habido, ya sabes, algunas grandes sumas perdidas en el pasado debido a este problema en particular.

9. Verification, Audits, Reach, and Pipeline UI

Short description:

La verificación y las auditorías desempeñan un papel crucial en la prevención de tokens bloqueados. Reach proporciona un compilador que verifica el código, mientras que los auditores verifican las afirmaciones proporcionadas al compilador. Las demostraciones muestran la importancia de una verificación adecuada, y hay una solución disponible en el portal del desarrollador. La interfaz de usuario de Pipeline ofrece controles y componentes para una integración fácil en las soluciones. En resumen, exploramos la blockchain de Algorand, las características de la capa uno, la configuración del entorno, Reach y la construcción de una DApp simple.

Entonces, lo que hace la verificación y las auditorías es prevenir tokens bloqueados, ¿verdad? Por el contrato y, por lo tanto, se vuelven inaccesibles. En cuanto a las auditorías, la solución no Reach es que un auditor demuestra que el programa con su propio análisis y realiza la verificación de una versión del programa. Si hay un cambio menor, entonces la auditoría no sirve para una versión anterior. Tienen que hacer todo desde cero. Con Reach, el compilador verifica y luego el auditor verifica que proporcionaste al compilador Reach suficientes afirmaciones. Y los cambios de código, bueno, el auditor de Reach solo necesita verificar que las afirmaciones correctas se incluyeron en los cambios de código.

Entonces, aquí puedes ver que Alice lanza cuatro dedos y adivina un total de cinco. Esto es solo una demostración de imprimir algo en el backend y luego también puedes ver que Bob lanza cero dedos y adivina cuatro. Entonces, el valor real lanzado es cuatro y Bob gana la apuesta. Y puedes ver que a medida que aumenta el valor de la cuenta. ¿Qué sucede si cambio esto a solo una vez la apuesta? Ahora mismo tienes dos veces porque cada jugador está proporcionando una cantidad de apuesta. Entonces, dos veces la apuesta es el total que está en el bote. Si intentamos ejecutar esto, se dará cuenta de que, oye, esto no funciona porque vas a dejar dinero sobre la mesa. Y ahora puedes ver algunas violaciones a continuación. Puedes ver aquí que el mensaje de saldo cero al salir de la aplicación falló. No es un saldo cero, todavía queda algo ahí dentro. Tengo una solución que escribí en el portal del desarrollador. Aquí hay un enlace que detalla paso a paso la construcción de esa solución en particular que acabamos de ver.

Entonces eso nos lleva al frontend, ¿verdad? La interfaz de usuario de Pipeline, es un SDK de JS vanilla y una biblioteca de componentes de React. Y aquí puedes ver que hay controles disponibles que solo tienes que copiar fragmentos de código y HTML en tu solución. Puedes ver a la derecha un ejemplo que muestra una cuenta, pero no solo el número de cuenta, sino también un código QR. También hay componentes específicos de Algorand en React. Y tenemos espacios de Twitter con Algorand dev Twitter y sigue nuestro Algo Devs Twitter. En resumen, echamos un vistazo a Algorand blockchain a un alto nivel, así como algunos casos de uso, lo que puedes construir con soluciones. Y vimos todas las características de la capa uno. Luego echamos un vistazo a lo que implica configurar el entorno. Echamos un vistazo a Reach y a la construcción de una DApp simple. Este es un producto fascinante. Construye cosas como la verificación como un buen beneficio. Pero nuevamente, lo estás escribiendo en un código similar a JavaScript para el backend, el frontend también puede ser en JavaScript. Y el proceso de verificación es muy, muy importante para construir aplicaciones descentralizadas sólidas. Y finalmente, vimos los controles de la interfaz de usuario de Pipeline. Muchas gracias. ♪♪♪

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Escalando con Remix y Micro Frontends
Remix Conf Europe 2022Remix Conf Europe 2022
23 min
Escalando con Remix y Micro Frontends
Top Content
This talk discusses the usage of Microfrontends in Remix and introduces the Tiny Frontend library. Kazoo, a used car buying platform, follows a domain-driven design approach and encountered issues with granular slicing. Tiny Frontend aims to solve the slicing problem and promotes type safety and compatibility of shared dependencies. The speaker demonstrates how Tiny Frontend works with server-side rendering and how Remix can consume and update components without redeploying the app. The talk also explores the usage of micro frontends and the future support for Webpack Module Federation in Remix.
Componentes de Full Stack
Remix Conf Europe 2022Remix Conf Europe 2022
37 min
Componentes de Full Stack
Top Content
RemixConf EU discussed full stack components and their benefits, such as marrying the backend and UI in the same file. The talk demonstrated the implementation of a combo box with search functionality using Remix and the Downshift library. It also highlighted the ease of creating resource routes in Remix and the importance of code organization and maintainability in full stack components. The speaker expressed gratitude towards the audience and discussed the future of Remix, including its acquisition by Shopify and the potential for collaboration with Hydrogen.
Depuración de JS
React Summit 2023React Summit 2023
24 min
Depuración de JS
Top Content
Debugging JavaScript is a crucial skill that is often overlooked in the industry. It is important to understand the problem, reproduce the issue, and identify the root cause. Having a variety of debugging tools and techniques, such as console methods and graphical debuggers, is beneficial. Replay is a time-traveling debugger for JavaScript that allows users to record and inspect bugs. It works with Redux, plain React, and even minified code with the help of source maps.
Haciendo JavaScript en WebAssembly Rápido
JSNation Live 2021JSNation Live 2021
29 min
Haciendo JavaScript en WebAssembly Rápido
Top Content
WebAssembly enables optimizing JavaScript performance for different environments by deploying the JavaScript engine as a portable WebAssembly module. By making JavaScript on WebAssembly fast, instances can be created for each request, reducing latency and security risks. Initialization and runtime phases can be improved with tools like Wiser and snapshotting, resulting in faster startup times. Optimizing JavaScript performance in WebAssembly can be achieved through techniques like ahead-of-time compilation and inline caching. WebAssembly usage is growing outside the web, offering benefits like isolation and portability. Build sizes and snapshotting in WebAssembly depend on the application, and more information can be found on the Mozilla Hacks website and Bike Reliance site.
¿Webpack en 5 años?
JSNation 2022JSNation 2022
26 min
¿Webpack en 5 años?
Top Content
In the last 10 years, Webpack has shaped the way we develop web applications by introducing code splitting, co-locating style sheets and assets with JavaScript modules, and enabling bundling for server-side processing. Webpack's flexibility and large plugin system have also contributed to innovation in the ecosystem. The initial configuration for Webpack can be overwhelming, but it is necessary due to the complexity of modern web applications. In larger scale applications, there are performance problems in Webpack due to issues with garbage collection, leveraging multiple CPUs, and architectural limitations. Fixing problems in Webpack has trade-offs, but a rewrite could optimize architecture and fix performance issues.
Hacia una Biblioteca Estándar para Runtimes de JavaScript
Node Congress 2022Node Congress 2022
34 min
Hacia una Biblioteca Estándar para Runtimes de JavaScript
Top Content
There is a need for a standard library of APIs for JavaScript runtimes, as there are currently multiple ways to perform fundamental tasks like base64 encoding. JavaScript runtimes have historically lacked a standard library, causing friction and difficulty for developers. The idea of a small core has both benefits and drawbacks, with some runtimes abusing it to limit innovation. There is a misalignment between Node and web browsers in terms of functionality and API standards. The proposal is to involve browser developers in conversations about API standardization and to create a common standard library for JavaScript runtimes.

Workshops on related topic

Domina los Patrones de JavaScript
JSNation 2024JSNation 2024
145 min
Domina los Patrones de JavaScript
Top Content
Featured Workshop
Adrian Hajdin
Adrian Hajdin
Durante esta masterclass, los participantes revisarán los patrones esenciales de JavaScript que todo desarrollador debería conocer. A través de ejercicios prácticos, ejemplos del mundo real y discusiones interactivas, los asistentes profundizarán su comprensión de las mejores prácticas para organizar el código, resolver desafíos comunes y diseñar arquitecturas escalables. Al final de la masterclass, los participantes ganarán una nueva confianza en su capacidad para escribir código JavaScript de alta calidad que resista el paso del tiempo.
Puntos Cubiertos:
1. Introducción a los Patrones de JavaScript2. Patrones Fundamentales3. Patrones de Creación de Objetos4. Patrones de Comportamiento5. Patrones Arquitectónicos6. Ejercicios Prácticos y Estudios de Caso
Cómo Ayudará a los Desarrolladores:
- Obtener una comprensión profunda de los patrones de JavaScript y sus aplicaciones en escenarios del mundo real- Aprender las mejores prácticas para organizar el código, resolver desafíos comunes y diseñar arquitecturas escalables- Mejorar las habilidades de resolución de problemas y la legibilidad del código- Mejorar la colaboración y la comunicación dentro de los equipos de desarrollo- Acelerar el crecimiento de la carrera y las oportunidades de avance en la industria del software
Masterclass Web3 - Construyendo Tu Primer Dapp
React Advanced 2021React Advanced 2021
145 min
Masterclass Web3 - Construyendo Tu Primer Dapp
Top Content
Featured Workshop
Nader Dabit
Nader Dabit
En esta masterclass, aprenderás cómo construir tu primer dapp de pila completa en la blockchain de Ethereum, leyendo y escribiendo datos en la red, y conectando una aplicación de front end al contrato que has desplegado. Al final de la masterclass, entenderás cómo configurar un entorno de desarrollo de pila completa, ejecutar un nodo local e interactuar con cualquier contrato inteligente usando React, HardHat y Ethers.js.
Uso de CodeMirror para construir un editor de JavaScript con Linting y AutoCompletado
React Day Berlin 2022React Day Berlin 2022
86 min
Uso de CodeMirror para construir un editor de JavaScript con Linting y AutoCompletado
Top Content
Workshop
Hussien Khayoon
Kahvi Patel
2 authors
Usar una biblioteca puede parecer fácil a primera vista, pero ¿cómo eliges la biblioteca correcta? ¿Cómo actualizas una existente? ¿Y cómo te abres camino a través de la documentación para encontrar lo que quieres?
En esta masterclass, discutiremos todos estos puntos finos mientras pasamos por un ejemplo general de construcción de un editor de código usando CodeMirror en React. Todo mientras compartimos algunas de las sutilezas que nuestro equipo aprendió sobre el uso de esta biblioteca y algunos problemas que encontramos.
Testing Web Applications Using Cypress
TestJS Summit - January, 2021TestJS Summit - January, 2021
173 min
Testing Web Applications Using Cypress
Top Content
Workshop
Gleb Bahmutov
Gleb Bahmutov
Esta masterclass te enseñará los conceptos básicos para escribir pruebas end-to-end útiles utilizando Cypress Test Runner.
Cubriremos la escritura de pruebas, cubriendo cada característica de la aplicación, estructurando pruebas, interceptando solicitudes de red y configurando los datos del backend.
Cualquiera que conozca el lenguaje de programación JavaScript y tenga NPM instalado podrá seguir adelante.
Desatando los Componentes del Servidor React: Una Inmersión Profunda en el Desarrollo Web de la Próxima Generación
React Day Berlin 2023React Day Berlin 2023
149 min
Desatando los Componentes del Servidor React: Una Inmersión Profunda en el Desarrollo Web de la Próxima Generación
Workshop
Maurice de Beijer
Maurice de Beijer
¡Prepárate para potenciar tus habilidades de desarrollo web con los Componentes del Servidor React! En esta inmersiva masterclass de 3 horas, desbloquearemos el potencial completo de esta tecnología revolucionaria y exploraremos cómo está transformando la forma en que los desarrolladores construyen aplicaciones web rápidas y eficientes.
Únete a nosotros mientras nos adentramos en el emocionante mundo de los Componentes del Servidor React, que combinan sin problemas el renderizado del lado del servidor con la interactividad del lado del cliente para un rendimiento y una experiencia de usuario inigualables. Obtendrás experiencia práctica a través de ejercicios prácticos, ejemplos del mundo real y orientación experta sobre cómo aprovechar el poder de los Componentes del Servidor en tus propios proyectos.
A lo largo de la masterclass, cubriremos temas esenciales, incluyendo:- Entender las diferencias entre los Componentes del Servidor y del Cliente- Implementar Componentes del Servidor para optimizar la obtención de datos y reducir el tamaño del paquete JavaScript- Integrar Componentes del Servidor y del Cliente para una experiencia de usuario fluida- Estrategias para pasar datos efectivamente entre componentes y gestionar el estado- Consejos y mejores prácticas para maximizar los beneficios de rendimiento de los Componentes del Servidor React
0 a Auth en una Hora Usando NodeJS SDK
Node Congress 2023Node Congress 2023
63 min
0 a Auth en una Hora Usando NodeJS SDK
WorkshopFree
Asaf Shen
Asaf Shen
La autenticación sin contraseña puede parecer compleja, pero es fácil de agregar a cualquier aplicación utilizando la herramienta adecuada.
Mejoraremos una aplicación JS de pila completa (backend de Node.JS + frontend de React) para autenticar usuarios con OAuth (inicio de sesión social) y contraseñas de un solo uso (correo electrónico), incluyendo:- Autenticación de usuario - Administrar interacciones de usuario, devolver JWT de sesión / actualización- Gestión y validación de sesiones - Almacenar la sesión para solicitudes de cliente posteriores, validar / actualizar sesiones
Al final del masterclass, también tocaremos otro enfoque para la autenticación de código utilizando Flujos Descope en el frontend (flujos de arrastrar y soltar), manteniendo solo la validación de sesión en el backend. Con esto, también mostraremos lo fácil que es habilitar la biometría y otros métodos de autenticación sin contraseña.
Tabla de contenidos- Una breve introducción a los conceptos básicos de autenticación- Codificación- Por qué importa la autenticación sin contraseña
Requisitos previos- IDE de tu elección- Node 18 o superior