Una aplicación descentralizada (dapp) es una aplicación creada en una red descentralizada que combina un smart contract o contrato inteligente y una interfaz de usuario frontend. En Ethereum, los contratos inteligentes son accesibles y transparentes, como las API abiertas, por lo que su dapp puede incluso incluir un contrato inteligente escrito por otra persona.
Las Dapps puede sentirse como aplicaciones normales. Pero detrás de escena tienen algunas cualidades especiales porque heredan todos los superpoderes de Ethereum. Esto es lo que diferencia a las dapps de las aplicaciones.
DEFINICIÓN DE UN DAPP
Un dapp tiene su código de back-end ejecutándose en una red descentralizada de igual a igual. Compare esto con una aplicación donde el código de back-end se ejecuta en servidores centralizados.
Una dapp puede tener un código de interfaz de usuario e interfaces de usuario escritas en cualquier idioma (al igual que una aplicación) para realizar llamadas a su backend. Además, su interfaz puede alojarse en un almacenamiento descentralizado como IPFS
- Descentralizado: las dapps operan en Ethereum, una plataforma descentralizada pública abierta donde ninguna persona o grupo tiene el control
- Determinista: las dapps realizan la misma función independientemente del entorno en el que se ejecuten.
- Turing completo: las dapps pueden realizar cualquier acción con los recursos necesarios
- Aislado: las dapps se ejecutan en un entorno virtual conocido como Ethereum Virtual Machine para que, si el contrato inteligente tiene un error, no obstaculice el funcionamiento normal de la red blockchain.
Cómo funcionan las dapps
Los dapps tienen su código de back-end (contratos inteligentes) ejecutándose en una red descentralizada y no en un servidor centralizado. Utilizan la cadena de bloques de Ethereum para el almacenamiento de datos y contratos inteligentes para la lógica de su aplicación.
Un contrato inteligente es como un conjunto de reglas que viven en cadena para que todos las vean y se ejecutan exactamente de acuerdo con esas reglas. Imagine una máquina expendedora: si le proporciona fondos suficientes y la selección correcta, obtendrá el artículo que desea. Y al igual que las máquinas expendedoras, los contratos inteligentes pueden contener fondos de manera muy similar a su cuenta Ethereum. Esto permite que el código medie acuerdos y transacciones.
Una vez que se implementan las dapps en la red Ethereum, no puede cambiarlas. Las Dapps se pueden descentralizar porque están controladas por la lógica escrita en el contrato, no por un individuo o una empresa.
Sobre contratos inteligentes
Para introducir dapps, necesitamos introducir contratos inteligentes, el backend de una dapp a falta de un término mejor. Para obtener una descripción detallada, diríjase a nuestra sección sobre contratos inteligentes.
Un contrato inteligente es un código que vive en la cadena de bloques de Ethereum y se ejecuta exactamente como está programado. Una vez que los contratos inteligentes se implementan en la red, no puede cambiarlos. Las Dapps se pueden descentralizar porque están controladas por la lógica escrita en el contrato, no por un individuo o una empresa. Esto también significa que debe diseñar sus contratos con mucho cuidado y probarlos a fondo.
BENEFICIOS DEL DESARROLLO DAPP
- Tiempo de inactividad cero: una vez que el contrato inteligente se implementa en la cadena de bloques, la red en su conjunto siempre podrá atender a los clientes que buscan interactuar con el contrato. Los actores maliciosos, por lo tanto, no pueden lanzar ataques de denegación de servicio dirigidos a dapps individuales.
- Privacidad: no necesita proporcionar una identidad del mundo real para implementar o interactuar con un dapp.
- Resistencia a la censura: ninguna entidad individual en la red puede impedir que los usuarios envíen transacciones, implementen dapps o lean datos de la cadena de bloques.
- Integridad completa de los datos: los datos almacenados en la cadena de bloques son inmutables e indiscutibles gracias a las primitivas criptográficas. Los actores malintencionados no pueden falsificar transacciones u otros datos que ya se hayan hecho públicos.
- Computación sin confianza/comportamiento verificable: los contratos inteligentes se pueden analizar y se garantiza que se ejecutarán de manera predecible, sin la necesidad de confiar en una autoridad central.
Esto no es cierto en los modelos tradicionales; por ejemplo, cuando usamos sistemas bancarios en línea, debemos confiar en que las instituciones financieras no harán un mal uso de nuestros datos financieros, manipularán los registros ni serán pirateados.
HERRAMIENTAS PARA CREAR DAPPS
- Scaffold-ETH: experimente rápidamente con Solidity utilizando una interfaz que se adapta a su contrato inteligente.
- GitHub
- Ejemplo de aplicación
- Crear aplicación Eth: cree aplicaciones basadas en Ethereum con un solo comando.
- GitHub
- One Click Dapp: herramienta FOSS para generar interfaces dapp desde una ABI.
- oneclickdapp.com
- GitHub
- Etherflow: herramienta FOSS para que los desarrolladores de Ethereum prueben su nodo y compongan y depuren llamadas RPC desde el navegador.
- etherflow.quiknode.io
- GitHub