Lo que debes saber del desarrollo de dApps en Ethereum

0

En el artículo anterior, “Construyendo el futuro hacia las dApps” hablé sobre cómo algunos acontecimientos económicos y sociales pavimentaron el camino hacia la creación de aplicaciones descentralizadas, con Bitcoin como la precursora. Su creador, Satoshi Nakamoto, nos dejó su código abierto, junto con un nuevo mundo de posibilidades por crear. Ponte cómodo y adentrémonos de nuevo en el tema de las dApps.

Desarrollar una aplicación descentralizada es relativamente sencillo, dado que el código de varias dApps permanece abierto. Es decir, tú y yo podemos revisar los patrones de caracteres utilizados en una aplicación y, a partir de estos, moldear la nuestra.

En un entorno centralizado, las dApps rompen esquemas al eliminar la necesidad de intermediarios en los procesos o servicios que ofrecen. Las dApps permiten a los proveedores interactuar directamente con los usuarios finales, lo cual brinda mayor flexibilidad y satisfacción para los compradores y vendedores.

Las dApps se contruyen sobre una cadena de bloques que cuenta con su respectivo protocolo y criptomoneda. A pesar de que varios sitios web mencionan que las dApps deben contar con código abierto y token propio, en realidad no es obligatorio y varía según el modelo y concepción de cada una. Por lo tanto, esos factores quedan a consideración de los usuarios y sus preferencias al momento de estudiar y elegir un proyecto o de los creadores al momento de programarlas.

Desarrollo de una dApp en Ethereum

Las aplicaciones descentralizadas están compuestas por uno o varios contratos inteligentes que operan en la cadena de bloques de Ethereum y una plataforma front-end —puede ser un sitio web, una aplicación web o móvil, una interfaz bancaria o cualquier otra—. La comunicación entre ellos se realiza mediante una interfaz de programación de aplicaciones (API, por sus siglas en inglés).

Mira también: ¿Cómo funcionan los contratos inteligentes de Ethereum?

Actualmente, el costo del gas —el combustible de Ethereum— es alto y, en consecuencia, los desarrolladores de dApps tienden a utilizar el menor número posible de ejecuciones de código y datos almacenados en la cadena de bloques.

Directorios de dApps

Parte del procedimiento al crear una dApp es agregarla a un directorio o biblioteca de aplicaciones, donde se registra cada etapa de desarrollo: concepto, niveles de progreso, funcional, etc. Aquí podrás ver un directorio detallado de aplicaciones descentralizadas.

La lista es bastante larga, encontrarás juegos populares e intercambios de monedas, como Idex o Bancor, así como un gran número de mercados de predicciones. Si el ritmo de crecimiento continúa así de acelerado, quizá algún día tengamos a nuestra disposición una o varias tiendas electrónicas para todas las dApps.

Red de programación en Ethereum

A pesar de que Bitcoin es la primera aplicación descentralizada, que nació con el propósito de crear una alternativa a los medios de pagos tradicionales, las características de su blockchain no facilitan la creación de dApps a gran escala. Es por eso que surge Ethereum años más tarde como un proyecto que busca superar algunas de las dificultades de Bitcoin.

El enfoque de su libro blanco es contar con un mecanismo de desarrollo más eficiente en cuanto a tiempo, seguridad y escalabilidad con soluciones que faculten la participación inmediata del usuario final. Ethereum cuenta con un protocolo alternativo para la creación de aplicaciones descentralizadas.

Para la programación en Ethereum se utiliza Solidity, un lenguaje Turing completo que se ejecuta mediante la máquina virtual de Ethereum (EVM, por sus siglas en inglés). Solidity, orientado a contratos, permite a los nodos de Ethereum almacenar y procesar datos a cambio de un incentivo por resolver problemas del mundo real.

Mira también: ¿Qué es Ethereum?

Ya sea que quieras financiar tu campaña para salvar bosques o montar un refugio de animales, necesitarás aprender Solidity para poner comandos tan sencillos como: poner aquí, guardar allá, volver al punto de memoria, etc. Los lenguajes de programación Serpent —basado en Python— y LLL —basado en Lisp— también son útiles para desarrollar dApps mediante herramientas compiladoras, sin embargo, son menos robustos. ConsenSys, por ejemplo, recomienda en su blog solamente utilizar Solidity.

En una próxima entrega comentaré sobre algunos navegadores de dApps y herramientas para desarrolladores. También hablaré de algunas dApps populares que ya están cambiando formas de interacción humana.

¿Crees que las dApps lograrán dominar el mercado y revolucionar la forma en la que se interactúa en el mundo real? ¡Tu opinión es valiosa y me gustaría saber lo que piensas! Puedes aportar tus conocimientos en los comentarios y con gusto seguiremos el debate.

¿Te gustó el artículo? ¡Puedes apoyar a Ricardo Florentino en Patreon!

Deje un Comentario

Su correo electrónico no será publicado.