Día 2 - Escribir código para la web3.
Aprenda a escribir contratos inteligentes que controlen el dinero, identidad y propiedad.
La meta de este día es escribir contratos que compilen
Asegúrese de clonar cada repositorio y compilarlo localmente. Hacer que cada aplicación se ejecute es tan importante como leer el código porque hoy estará enfocado en comprender cómo funcionan todas las partes de un contrato.
Si te quedas atascado en una aplicación por algún motivo, solo pide ayuda en Discord y sigue adelante de inmediato. Si es posible, no esperes a que alguien responda antes de continuar o perderás tiempo valioso.
📗 Actividades principales
Si prefiere tener pasos específicos, puede hacer algo como esto para estudiar cada contrato o dApp detenidamente:
Elija cualquier contrato del Día 1 (consulte la página del Día 1) o dApp del Día 2 (consulte más abajo a continuación)
Clone el repositorio localmente (o en Gitpod si usa Windows)
Asegúrese de que puede encontrar el código fuente del contrato y que puede compilar el contrato en un archivo
.wasm
Pruebe el contrato de alguna manera para que sepa que está funcionando. Puede hacer esto usando los comandos NEAR CLI o ejecutando pruebas de simulación o pruebas unitarias dentro del proyecto, o incluso usando una interfaz web si la dApp tiene una.
Realice cualquier pequeño cambio en el contrato. No es un gran cambio, sino algo simple.
Reconstruya y vuelva a probar (repita los pasos 3 y 4)
¿El cambio que hizo funcionó como se esperaba? ¿O rompiste algo?
Pide ayuda si la necesitas
Siga repitiendo 6-7-8 hasta que aumente su confianza ... hasta que crea que comprende el contrato y puede controlarlo
Elimina el contrato y escríbelo de nuevo desde tus notas (¿tomaste notas, verdad?). También puede reescribir pequeñas partes del contrato, por supuesto.
📘 Actividades BONUS
Cuantas más aplicaciones vea, más ideas tendrá sobre lo que es posible desarrollar con NEAR.
Lea TODAS las aplicaciones para el lenguaje que elija, no solo 3
Lea también todas las aplicaciones del OTRO lenguaje.
Mira este pequeño rompecabezas, puede ser divertido para ti
Escriba un script en su lenguaje favorito que automatice algunas de las partes tediosas. Encontrarás algo de inspiración entre los otros proyectos que ya has visto.
Compilando un contrato
Desplegando (y opcionalmente inicializar) un contrato
Analizando métodos del contrato
📙 Ve más allá
AssemblyScript
Complete estos ejercicios en el taller de AssemblyScript
#1 Scavenger hunt a través de varios proyectos de AssemblyScript
#2 Debugging challenge para corregir algunas pruebas unitarias fallidas con contratos rotos
Completa este desafío y luego modifica el contrato de algunas formas interesantes.
#3 Desafío del ciclo de vida del desarrollo para guiarlo a través de la implementación de un contrato
Revise algunas de las estructuras de "conveniencia" de datos de NEAR. Todos estos son wrappers para NEAR Storage como se ve en la documentación.
colecciones en
near-sdk-as
rendimiento de las colecciones
Rust
Revise algunas de las estructuras de "conveniencia" de datos de NEAR. Todos estos son wrappers para NEAR Storage como se ve en la documentación.
colecciones en
near-sdk-rs
rendimiento de las colecciones
📚 Recursos
RECUERDA: Para la actividad de hoy
DEBES crear (y ejecutar pruebas, si están disponibles) para cada dApp ("aplicación descentralizada")
Debes INTENTAR comprender CADA línea de código en el contrato
AssemblyScript
Si tiene la intención de centrarse en AssemblyScript, [ABRIR la lista de dApps que usan AssemblyScript]
Debe revisar un mínimo de 3 aplicaciones marcadas como CORE Activity.
Rust
Si tiene la intención de centrarse en Rust, [ABRIR la lista de dApps que utilizan Rust]
Debe leer un mínimo de 3 aplicaciones marcadas como CORE Activity.
También puede leer más sobre los conceptos básicos de los contratos de Rust.
Aplicaciones sin programar un contrato
Es posible crear aplicaciones con NEAR que no utilicen un contrato.
A continuación, se muestran algunos ejemplos de estos: [ABRIR la lista de aplicaciones que se utilizan SIN CONTRATO]
Última actualización
¿Te fue útil?