Lenguajes que se utilizan en el desarrollo blockchain de DApps

Yolanda López

Existen muchos lenguajes de programación diferentes a la hora de desarrollar software sobre tecnología blockchain, pero en este caso nos centraremos en los lenguajes que más se utilizan si hablamos del desarrollo de aplicaciones descentralizadas o DApps.

Algo bastante común entre las personas que  están interesadas en la blockchain y que quieren empezar a ser desarrolladores es empezar aprendiendo a programar smart contracts cuando realmente no han programado en otros lenguajes. 

Esto es un error porque el desarrollo blockchain de aplicaciones está basado en muchas tecnologías web y es importante por un lado, entender estas tecnologías o lenguajes, y por otro, entender también cómo funciona la tecnología blockchain como tal, antes de empezar a desarrollar smart contracts.

Evidentemente, no es necesario conocer todas las tecnologías web que existen a día de hoy, pero sí es necesario tener conocimientos sobre backend y sobre frontend para comprender cómo funciona el desarrollo de aplicaciones descentralizadas. Para esto lo que vamos a hacer es un recorrido por las tecnologías necesarias para desarrollar una DApp, empezando por el desarrollo de la parte de frontend y terminando por el de backend. 

HTML

En primer lugar, para crear las interfaces en el navegador tenemos HTML, que no es un lenguaje de programación sino un lenguaje de marcas.

HTML nos permite estructurar y desplegar las páginas web y sus contenidos: los párrafos, listas, imágenes, tablas con datos… todo lo que nos encontramos en las páginas web que visitamos habitualmente.

2. CSS

El segundo lenguaje de marcas que utilizamos para nuestras interfaces de navegador es CSS y lo que nos permite es darle estilo a nuestra página, a lo que hemos estructurado con HTML. Con este lenguaje podemos diseñar la interfaz a nuestro gusto, y esto va a ser lo que vea el usuario cuando visite nuestra web. 

3. JAVASCRIPT

Después, lo que necesitaríamos sería un lenguaje intermedio que nos permitiera interactuar con la Blockchain, con billeteras tipo Metamask y con nuestros smart contracts, y el lenguaje por excelencia para hacer esto es JavaScript. 

JavaScript es un lenguaje de programación, muy robusto, que permite a los desarrolladores hacer páginas web interactivas y dinámicas. Además, con el paso del tiempo se han ido creando un montón de herramientas sobre este lenguaje y esto ha permitido desbloquear funcionalidades casi infinitas. 

Para que veáis bien todas las posibilidades de este lenguaje, voy a enumerar los usos más importantes que se le dan aunque hay muchos más. 

  1. Se utiliza para el desarrollo de sitios web del lado del cliente, o dicho de otra manera, la parte de frontend del navegador.
  2. Permite el desarrollo de todo tipo de aplicaciones gracias a NodeJS, que es un entorno para crear todo tipo de herramientas del lado del servidor y se caracteriza principalmente porque los procesos se ejecutan de manera ágil, no sufre bloqueos. 
  3. JavaScript también sirve para desarrollar aplicaciones dispositivos móviles.
  4. También se utiliza este lenguaje en el desarrollo de aplicaciones de escritorio para sistemas Windows, Linux y Mac. Puede escribir código compatible con todas estas plataformas.

Así que podríamos decir que JavaScript es como el lenguaje de programación universal y de hecho es perfecto para aprender a programar. 

Particularizando en el desarrollo Blockchain, se utiliza muchísimo una librería de JavaScript que se llama React que sirve para crear interfaces de usuario interactivas. 

La razón por la que se elige esta biblioteca o librería es que mejora mucho el rendimiento de las aplicaciones.

Otra cosa indispensable en el desarrollo de Aplicaciones Descentralizadas es saber cómo conectar toda esta parte de frontend con los smart contracts, para así poder interactuar con ellos a través de una interfaz web y precisamente para esto existe una colección de librerías de JavaScript que se llama Web3

4. SOLIDITY

Y por último, llegamos a la que es probablemente la parte más importante cuando hablamos del desarrollo blockchain y de aplicaciones descentralizadas y es, efectivamente, la programación de los smart contracts o contratos inteligentes. 

Es cierto que existen varios lenguajes para programar smart contracts, pero nosotros siempre nos decantamos por Solidity. ¿Y por qué? Pues porque es el lenguaje más versátil y más flexible de todos, y porque además aunque fue creado para la blockchain de Ethereum, también es compatible con otras blockchains derivadas así que esto también nos da la libertad de no limitarnos solo a una blockchain.

Es el lenguaje más extendido de todos en todo el mundo de desarrollo blockchain porque además de ser el primero que se creó, se diseñó para ser cómodo de aprender por los desarrolladores  porque está basado en otros lenguajes muy popularizados. Entre ellos, JavaScript.

Esta también es una de las razones por las que al principio hemos dicho que es importante aprender primero otras tecnologías antes de ponerse manos a la obra con el desarrollo de smart contracts. Haciéndolo así, aunque parezca un camino más largo, haremos un trabajo mucho más eficiente y mucho mejor. 

Solidity es un lenguaje de alto nivel orientado a objetos, y como hemos dicho nace para la blockchain de Ethereum sobre los años 2014-2015, y está específicamente diseño para ejecutarse sobre la Ethereum Virtual Machine. Es un lenguaje bastante joven, y una de las particularidades que tiene es que está en constante evolución así que periódicamente se introducen cambios y funciones nuevas. 

Si ya sabes programar en otros lenguajes, te reto a que intentes aprender Solidity. Te aseguro que te resultará muy sencillo y muy intuitivo. 

Master de desarrollo blockchain de Conquer Blocks

En el máster de Conquer Blocks, nos hemos propuesto formar nuevos desarrolladores Blockchain porque creemos que es la tecnología del futuro, creemos verdaderamente que la tecnología blockchain lo va a cambiar todo. 

Y lo hacemos desde cero. Y con esto, nos referimos a que no es para nada necesario tener conocimientos previos sobre otras tecnologías porque esto también está contemplado en el máster. 

Lo que hacemos primero es enseñarte a programar en dos de los lenguajes más utilizados en el mundo del desarrollo de software. Comenzamos con Python y después seguimos con JavaScript, que como habéis podido ver es FUNDAMENTAL en el desarrollo de aplicaciones descentralizadas. 

Una vez aprendido esto, tenemos dos módulos en paralelo en el que por un lado, vemos en profundidad el funcionamiento de la Ethereum Virtual Machine lo cual es vital cuando trabajamos en la blockchain de Ethereum, y por otro lado ya sí, enseñamos el desarrollo de smart contracts con Solidity

Esto ha sido un breve resumen de todo lo que vemos en el master. Si os interesa, os dejamos un link en el que podréis consultar todos los contenidos del máster, podréis ver quiénes son los profesores y también podréis contactar con gente del equipo para resolver todas las dudas que podáis tener.

https://conquercrypto.io/master-desarrollo-blockchain/

Vídeo del artículo:

Noticias relacionadas

Últimas noticias