Para comenzar solidity es un lenguaje orientado a contratos que se utiliza para escribir “Smart contracts” o contratos inteligentes tiene influencia de Javascript, C++, y powersheell entre otros inicialmente esta pensado para ethereum pero es completamente opensource así que a futuro puede ser utilizado por otras plataformas
https://github.com/ethereum/solidity
solidity es la extensión oficial para trabajar con este lenguaje en visual studio Code aunque como vemos tenemos otras extensiones
Podemos crear un contrato sencillo como el siguiente código en un archivo .sol la extensión oficial de solidity
pragma solidity ^0.4.0; contract Hello { uint storedData; function get() publicconstantreturns (uint) { return storedData+1; } }
para compilas el contrato abrimos la plaleta de comandos con ctrl+shift+P o desde el menú View -> Command palette o presionando F5
Al compilar veremos un mensaje de confirmación y la generación de los 3 archivos que componen el contrato
*.abi: (Application Binary Interface) contiene la interfaz que indica como se llaman los contratos
*.bin: contiene el bytecode que se almacena en el blockchain y que es interpretado por EVM (Ethereum Virtual Machine)
*.json: contiene una descripcion completa de los eventos y funciones del contrato para ser invocado e incluye los archivos .bin y .abi