En mi caso utilizo:
Ethereum como red
Solidity como lenguaje de programacion
Hardhat como framework
Alchemy como proveedor de Nodo
JavaScript + CSS para el front
Inicia tu camino construyendo la Web3
Bienvenida al desarrollo en blockchain
Por qué iniciar en el desarrollo de blockchain
¿Quién puede ser blockchain developer?
Áreas de aplicación
Conociendo el entorno de desarrollo
Consideraciones básicas para desarrollo
Lenguajes y herramientas para el desarrollo blockchain
Arquitectura básica en Web 3
Glosario criptográfico
Desarrollo en Ethereum
Solidity: el lenguaje para programar contratos inteligentes
OpenZeppelin Contracts
Ethereum Virtual Machine
Mi camino programando - Ernesto García
Primeros pasos en Ethereum
Uso de wallets: Metamask
Redes de prueba
RemixIDE
Entorno de desarrollo con Hardhat
Compilando y desplegando contratos inteligentes
Conectando la blockchain con el navegador: Web3.js y Ether.js
Ejecutando tu aplicación descentralizada
De Web2 a Web3 - Alfredo Bonilla
Seguridad y protocolos de segunda capa
Desarrollando en capa 2
Aprovecha la descentralización - Oscar Barajas
Más allá del desarrollo
Base de datos en blockchain: IPFS, Filecoin y ARWEAVE
Blockchain startups y DAO
Cómo llegué a trabajar en programación - Natacha De La Rosa
Continúa tu aprendizaje en la Escuela de Blockchain y Criptomonedas
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Natacha De La Rosa
En blockchain, encontrarás diversos lenguajes, protocolos, frameworks y librerías. Todas trabajan en conjunto para la construcción de aplicaciones descentralizadas.
Entendamos por "Web3" como un conjunto de protocolos y tecnologías que hacen posible construir aplicaciones totalmente descentralizas.
Para comprender cómo se construye software bajo este nuevo paradigma de programación, dividamos el stack tecnológico en cuatro partes:
Cuando hablamos de las redes, nos referimos a la blockchain con la cual queremos interactuar. Pudiendo ser Ethereum, cualquier segunda capa sobre esta (Polygon, Arbitrum, Optimism, entre otras) o alternativas no basadas en EVM como Solana o Cardano.
Para interactuar con una blockchain basada en EVM, necesitaremos de un proveedor que nos permita comunicarnos con un nodo de esta blockchain para lograr desplegar un contrato, siendo Infura y Alchemy los más populares.
Otra forma de interactuar con la blockchain y obtener información sobre lo que está sucediendo son los exploradores. Toda blockchain tiene su propio explorador, sin importar que sean de primera o segunda capa. Por ejemplo, Etherscan para Ethereum, Polygonscan para Polygon o Solana Explorar para dicha blockchain.
Es importante reconocer cuando un explorador es de la mainnet de una blockchain, o de una testent. Por ejemplo, la red de prueba de Ethereum llamada Goerli tiene su propio explorador.
Saber utilizar e interactuar con los diversos exploradores será crucial para ti como desarrollador blockchain.
Conjuntos de librerías y frameworks que nos ayudan a desarrollar las aplicaciones tanto del lado del backend como del front-end.
Web3.js y Ether.js son dependencias que puedes encontrar en NPM para interactuar con una blockchain basada en EVM desde un front-end.
Los entornos de desarrollo de smart contracts más populares son HardHat y Truffe basados en Javascript, mientras que Brownie está basado en Python.
Un concepto algo más avanzado en el mundo blockchain es el de los oráculos, o Oracles. Los mismos permiten la interacción de un contrato inteligente con el "mundo real" para la obtención de datos como la cotización actual de una cripto. Chainlink es uno de los oráculos más utilizados del mundo.
La descentralización va más allá de blockchain. Existe una serie de storages de archivos descentralizados que te permitirán guardar imágenes o desplegar aplicaciones front-end para su acceso posterior. Los más reconocidos son IPFS, Filecoin y Arweave. Lograr la total descentralización de una aplicación puede requerir de uno de estos tipos de file systems.
La aplicación descentralizada en sí con la cual el usuario interactuará es la primera capa del stack. Cualquier tipo de app que desees desarrollar deberá contemplar la mejor experiencia de usuario, diseño y, fundamental, la conexión con la wallet. Metamask es una de las wallets más utilizadas por los usuarios, WalletConnects es otra gran alternativa a explorar para la identificación de usuarios.
Algunos ejemplos de apps descentralizadas puedes ser Uniswap o Aave, ambas dapps DeFi.
El stack es amplio y variado dependiendo la blockchain con la cual trabajes o tus gustos personales a la hora de escribir código. ¿Con cuál stack te identificas?
Contribución creada por: Kevin Fiorentino (Platzi Contributor).
Aportes 8
Preguntas 0
En mi caso utilizo:
Ethereum como red
Solidity como lenguaje de programacion
Hardhat como framework
Alchemy como proveedor de Nodo
JavaScript + CSS para el front
Esta infografía, recoge toda la información que necesitamos para entender como desarrollar web 3.
Ethereal,
Actualmente, estoy trabajando con Solana. El HardHat de Solana se llama Anchor que es un framework de Rust y no se necesita un provider para desplegar contratos. En el front, alterno entre React y Angular y utilizo @solana/web en lugar de Web3.js o Ether.js.
Los invito al Curso de Solana de Platzi =)
Polkadot es un Layer 0, y no un layer 1 como comenta la profe
Ethereum, solidity, Rect JS , Hardhat
Solidity + Hardhat + React js + Alchemy
Solidity + Hardhat + Vue + Infura
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?