Solidity

Solidity es un lenguaje de programación dedicado a contratos inteligentes. Es el lenguaje principal de Ethereum. 

***

¿Qué es Solidity?

Solidity es un lenguaje de programación orientado a objetos para escribir contratos inteligentes.

Se utiliza para implementar contratos inteligentes en varias plataformas de blockchain, sobre todo, Ethereum.

Fue desarrollado por Gavin Wood, Christian Reitwiessner, Alex Beregszaszi, Liana Husikyan, Yoichi Hirai y varios colaboradores principales de Ethereum para permitir la redacción de contratos inteligentes en plataformas de Blockchain como Ethereum.

logo solidity
Logo de Solidity. Imagen tomada de su sitio web.

Historia

Solidity fue propuesta inicialmente en agosto de 2014 por Gavin Wood; el lenguaje lo desarrolló más tarde el equipo Solidity del proyecto Ethereum, dirigido por Christian Reitwiessner.

En la actualidad, es el lenguaje principal en Ethereum, así como en otras blockchains privadas que se ejecutan en plataformas que compiten con Ethereum, como Monax y su blockchain Hyperledger Burrow, que utiliza Tendermint para el consenso.

SWIFT ha implementado una prueba de concepto utilizando Solidity que se ejecuta en Burrow.

Características

Es un lenguaje de programación estático diseñado para desarrollar contratos inteligentes que se ejecutan en el EVM. Se compila a bytecode que es ejecutable en el EVM. Con Solidity, los desarrolladores pueden escribir aplicaciones que implementan la lógica empresarial autoimpulsada incorporada en contratos inteligentes, dejando un registro de transacciones no repudiable y autoritario.

Escribir contratos inteligentes en lenguajes específicos de contratos inteligentes, como este, se conoce como fácil.

En comparación con otros lenguajes de orientación de EVM de la época, como Serpent y Mutan, Solidity contenía una serie de diferencias importantes.

Además, se admitieron variables de miembro complejas para contratos que incluyen asignaciones y estructuras arbitrariamente jerárquicas.

Asimismo, los contratos admiten la herencia, incluida la herencia múltiple con la linealización C3.

También se introdujo una aplicación de interfaz binaria que facilita múltiples funciones de tipo seguro dentro de un solo contrato.

Un sistema de documentación para especificar una descripción centrada en el usuario de las ramificaciones de una llamada de método también se incluyó en la propuesta, conocida como “Especificación de lenguaje natural”.

Integraciones

Según su web, este lenguaje tiene integraciones en:

Remix

Entorno integrado de desarrollo (IDE) basado en un navegador que integra un compilador y un entorno en tiempo de ejecución para Solidity sin los componentes orientados al servidor.

Ethereum Studio

Entorno integrado de desarrollo (IDE) especializado que proporciona acceso a un entorno completo de Ethereum a través de un intérprete de comandos (shell).

Plugin IntelliJ IDEA

Plugin de Solidity para IntelliJ IDEA (y el resto de IDEs de JetBrains).

Extensión de Visual Studio

Plugin para Microsoft Visual Studio que incluye un compilador de Solidity.

Paquete para SublimeText

Paquete para resaltar la sintaxis de Solidity en el editor SublimeText.

Etheratom

Plugin para el editor Atom que ofrece: resaltar la sintaxis, un entorno de compilación y un entorno en tiempo de ejecución (compatible con un nodo en segundo plano y con una máquina virtual).

Además de otros plugin y programas como Linter para Atom, Linter de Solium para Atom, Solium, Extensión para Visual Studio Code, Emacs Solidity (plugin para el editor Emacs que incluye resaltar la sintaxis y el reporte de los errores de compilación), Vim Solidity y Vim Syntastic.

Igualmente, si quiere más información visite su página en español.

Versión de DiarioBitcoin

 

 

« Volver al índice del glosario

Related posts