Что такое Solidity
Solidity — это объектно-ориентированный язык для написания смарт-контрактов.
Смарт-контракты — это программы, которые хранятся внутри блокчейна. Они определяют правила и поведение при переносе цифровых ресурсов. С помощью языка Solidity осуществляется программирование смарт-контрактов для блокчейн-платформы Ethereum. Смарт-контракты содержат состояние и программируемую логику. В результате транзакций выполняются функции, определяемые в смарт-контрактах. Таким образом, с помощью смарт-контрактов вы можете создавать бизнес-процессы.
Обзор
Solidity — это самый популярный язык программирования для блокчейн-платформы Ethereum.
Solidity представляет собой высокоуровневый язык, построенный на основе других языков программирования, таких как C++ Python и JavaScript. Если вы имеете опыт работы с любыми из них, код языка Solidity покажется вам знакомым.
Язык Solidity является статически типизированным. Это означает, что проверка типов выполняется во время компиляции, а не во время выполнения, как в случае с динамически типизированными языками. При работе со статически типизированным языком необходимо указывать тип каждой переменной. К таким языкам относится C++, тогда как Python и JavaScript являются динамически типизированными.
Язык Solidity поддерживает наследование, благодаря чему функции, переменные и другие свойства, присутствующие в одном контракте, можно использовать в других. Кроме того, язык поддерживает сложные определяемые пользователем типы, такие как структуры и перечисления, с помощью которых можно группировать связанные типы данных.
Solidity — это язык программирования с открытым исходным кодом с активно растущим сообществом участников совместной работы. Дополнительные сведения о проекте Solidity и участии в нем см. в репозитории GitHub.
Что такое Ethereum?
Прежде чем продолжить, также необходимо ознакомиться с платформой Ethereum.
Ethereum — это одна из самых известных блокчейн-платформ, которая уступает по популярности только биткойну. Это технология была разработана сообществом и использует собственную криптовалюту под названием "эфир" (ETH), которую можно покупать и продавать.
Уникальность платформы Ethereum заключается в возможности программировать блокчейн. Кроме того, с помощью Ethereum можно создавать код определений контрактов, которые также называются смарт-контрактами. С помощью смарт-контрактов описывается передача цифровых активов между участниками блокчейна. Основным языком программирования для разработки на платформе Ethereum является Solidity, который создан и поддерживается разработчиками Ethereum.
Виртуальная машина Ethereum
Контракты Solidity выполняются на виртуальной машине Ethereum (EVM). Такая машина представляет собой полностью изолированную среду. Она работает только с контрактами, которые выполняются на ней, и не осуществляет доступ к каким-либо другим сетевым ресурсам. На данный момент мы не будем углубляться в принципы работы EVM. Вам достаточно запомнить, что смарт-контракты Solidity развертываются и выполняются в виртуальной среде.