Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Lenguajes y herramientas para el desarrollo de blockchain

5/14
Recursos

Puedes hacer uso de diferentes lenguajes de programación al momento de desarrollar aplicaciones basadas en blockchain, no hay solo uno. Estos son de los más usados:

  • C++: Es un lenguaje lineal, muy robusto. Bitcoin tuvo su origen con este lenguaje.
  • Python: Uno más amigable y fácil de aprender, que también es empleado para Big Data. Aunque es más lento.
  • JavaScript: Junto con C++ es el lenguaje que está envuelto en el desarrollo de lenguajes especializados de la web3.0, tales como Solidity.
  • Solidity: Más que un lenguaje de programación, se podría tratar como un lenguaje de marcado, aunque es más complejo. Fue desarrollado por Ethereum y es utilizado para la construcción de smart contracts y su despliegue directo en la EVM (Ethereum Virtual Machine). Su sintaxis es muy parecida a la de JavaScript y a la programación orientada a objetos.

Otras herramientas

Estos son entornos de trabajo para poder escribir nuestro propio código o incluso utilizar librerías y frameworks para un flujo más eficiente:

  • Visual Studio Code: el IDE más popular en los últimos años, no parece que quiera dejar este lugar en algún momento pronto. Al ser de código abierto, tiene la enorme ventaja de poder ser complementado con una infinidad de extensiones para agregarle herramientas que facilitan el desarrollo y lo vuelven una tarea cada vez más entretenida y cómoda.
  • RemixIDE: el IDE ideal si se quiere empezar con el desarrollo de smart contracts. Está alojado en la nube, por lo que su acceso está abiero sin tener que descargarlo en el ordenador. Aquí también es donde se usará Solidity, el lenguaje nativo de la aplicación.
  • Truffle Suite: este es un framework especializado en el desarrollo para smart contracts. Sirve para el uso de dependencias en el desarrollo de dApps (aplicaciones descentralizadas).
  • Hyperledger: Es una plataforma que brinda una infraestructura y los recursos necesarios para la construcción de proyectos blockchain de código abierto. Con este es posible, pues, crear una blockchain propia.

Aportes 23

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

¿Cuál es el rol de Javascript, Python y otros lenguajes tradicionales?

Aunque puede parecer confuso, sí se suelen utilizar lenguajes tradicionales en el desarrollo Blockchain. No obstante, los contratos inteligentes no se pueden desarrollar con estos, dado que el entorno de ejecución de la EVM (máquina virtual de Ethereum) no los soporta.
Aún así, puedes utilizarlos como herramientas de administración y soporte para tus smart contracts, en casos como:

  • Escribir tests desde python o javascript para probar tus Smart Contracts con Web3
  • Crear scripts que realicen operaciones sobre tus Smart Contracts, como tasks
  • Desarrollar mecanismos de despliegue de Smart Contracts

Lenguajes comúnmente utilizados para desarrollar en blockchain:

Herramientas para escritura de código:

OMG!!! No conocía de la existencia de Remix sin duda esto es solo el inicio de lo mucho que se debe aprender https://remix.ethereum.org/

A esa lista de lenguajes añadiría a Rust vean por qué

Para el desarrollo de smarts contracts se me hace cómodo utilizar RemixIDE en Brave

Interesante el tema de REMIX para la simulación es interesante, este tipo de herramientas.

Si bien el curso no entra a profundidad a las herramientas, mi curiosidad me tiene con 10 ventanas abiertas para aprender de tan ambicioso mundo

Implementacion de un proyecto real utilizando blockchain por Starbucks. Ademas demostrar un stack de produccion en desarrollo -> https://www.youtube.com/watch?v=xPozl9Sa64Y

Falto Hardhat y Brownie, Hardhat es super poderoso y donde puedes crear scripts para trabajar de mejor manera, Brownie para desarrollo en solidity para los amantes de python

Es necesario entender que los lenguajes de programación nombrados en esta lista, nos permite crear partes del ecosistema de una Blockchain, como dato curioso. Bitcoin tras bambalinas es multilenguaje dado que, para Satoshi Nakamoto, era complicado hacer nodos o funciones especificas con un solo lenguaje.

Les faltó mencionar Rust 〒▽〒

LLegas a la 5ta y nada de desarrollo de apps en blockchain

“python a diferencia de C++ es orientado a objetos” esta frase en totalmente INCORRECTA. ni python ni C++ son lenguajes exclusivos a la programación orientada a objetos.

Ambos lenguajes tanto C++ como Python son lenguajes multiparadigma! es decir, ambos son, lenguajes funcionales, OOP, imperativo, etc. (de hecho un “truquito” para ser un gran desarrollador de python te recomiendo aprender C++, son lenguajes que se llevan muy bien!)

Creo que hay un error, C++ no es orientado a objetos?

Agregaría GO, un lenguaje sencillo, fácil de aprender y diseñado para alta concurrencia, al ser código nativo trae muchas ventajas sobre lenguajes interpretados.

RemixIDE te permite hacer:

  • Simulaciones

  • Compilaciones

  • Deploys

  • Comunicacion con otras BlockChains

Truffle Suite en el puedes hacer proyectos mas ambiciosos

**HyperLEdger **te permite desarrollar e implementar tus propias BlockChains! Asi es! con ello puedes entender como es que esta hecha una Oh Mai Gad!

He usado RemixIDE para seguir algunos tutoriales y es un ambiente de desarrollo increíble, ya que además te permite compilar y hacer Deploy para ver si todo funciona como lo esperamos.

TODO UN MUNDO NUEVO SE VIENE!

Cabe mecionar que tambien estan tomando fuerza

  • Rust (como alternativa a C++)
  • ActionScript
    como en el caso de NEAR

truffle tiene un equivalente un poco mas potente para trabajar con blockchains EVM se lama HardHat

RemixiDE es muy interesante… hay que usarla.

IDE: interface development environment
TestNet: Red de pruba

Me gustaría aprender mas sobre hyperledger, ya que por la forma en que trabaja para empresas creo que tendrá mucho uso.