Система языков смарт-контрактов: развитие и сравнение от EVM до Solana и Move

robot
Генерация тезисов в процессе

Обзор языка смарт-контрактов

Смарт-контракты — это автоматизированные исполняемые протоколы, работающие на блокчейн-платформе, которые могут обеспечивать доверительные транзакции без посредников. Они содержат кодовые функции, могут взаимодействовать с другими контрактами и автоматически исполняются при выполнении заданных условий.

Концепция смарт-контрактов была предложена Ником Сабо в 90-х годах, но получила широкое применение только с появлением Эфириума. Эфириум был запущен в 2015 году и поддерживает развертывание и выполнение смарт-контрактов, называясь блокчейном второго поколения.

Язык смарт-контрактов используется для написания смарт-контрактов, которые компилируются в байт-код и выполняются на виртуальной машине блокчейн-платформы. Он должен безопасно и эффективно выражать правила контракта и предоставлять инструменты для обработки транзакций и состояний блокчейна.

В настоящее время разработка смарт-контрактов в основном сосредоточена на Ethereum и блокчейнах, совместимых с EVM. Solana является платформой с наибольшим количеством разработчиков в не-EVM экосистеме, в то время как Move был специально разработан для безопасной разработки смарт-контрактов.

Саморазвитие веб3-разработчиков — смарт-контракты

Язык смарт-контрактов EVM

EVM является ядром Ethereum, отвечающим за выполнение смарт-контрактов и обработку транзакций. Ethereum использует многоуровневую архитектуру, включая байт-код, промежуточный язык и высокоуровневый язык.

В настоящее время самыми популярными высокоуровневыми языками EVM являются Solidity и Vyper, а также есть такие варианты, как Yul, Yul+, Fe и Huff.

Solidity — это объектно-ориентированный язык, вдохновленный C++, Python и JavaScript. Он поддерживает множественное наследование и определяет стандарт ABI.

Vyper разработан командой Виталика Бутерина, синтаксис похож на Python, сосредоточен на безопасности и эффективности Gas. Он не поддерживает объектно-ориентированное программирование и встроенный ассемблер.

Yul — это язык ассемблера с высоким уровнем управления потоком, который можно использовать через встроенные блоки ассемблера Solidity. Yul+ — это расширенная версия Yul.

Fe - это высокоуровневый язык, похожий на Rust, использующий модульную систему для повторного использования кода.

Huff — это язык ассемблера, который позволяет вручную управлять стеком и вызывать инструкции EVM, в основном используемый для оптимизации пределов газа.

На Ethereum около 90% смарт-контрактов разрабатываются на Solidity, затем идет Vyper. Yul/Yul+ и Huff в основном используются для оптимизации газа.

Самосовершенствование Web3 разработчиков — язык смарт-контрактов

Язык смарт-контрактов Solana

Солана известна своей механикой PoH и высокой производительностью, она является одной из самых быстрорастущих публичных цепей по рыночной капитализации. Солана называет смарт-контракты программами на цепи, которые в основном написаны на языке Rust.

Solana использует свою собственную виртуальную машину SVM и байт-код SBF, а не WASM. Ключевой компонент SVM Sealevel поддерживает параллельную обработку нескольких смарт-контрактов.

SBF основан на eBPF, обладает высокой производительностью и безопасностью. Solana произвела индивидуальные изменения в Rust и eBPF LLVM бэкенде.

В настоящее время разработка контрактов на Solana в основном поддерживает два языка: Rust и Solang. Rust — это высокопроизводительный язык безопасности, разработанный Mozilla. Solang — это компилятор Solidity на основе LLVM, поддерживающий Solana и Polkadot.

Саморазвитие веб3-разработчика — язык смарт-контрактов

Язык смарт-контрактов Move

Move изначально был разработан для проекта Diem компании Meta, сейчас в основном используется в блокчейнах Aptos и Sui. Основные характеристики Move включают:

  1. Защита ресурсов первого класса
  2. Высокая гибкость, поддержка вызова нескольких программ в одной сделке
  3. Высокая безопасность, поддержка статической верификации

Move использует модульный дизайн, каждый смарт-контракт является модулем. Sui Move основан на Core Move и использует объектную модель данных.

Компилятор, валидатор и виртуальная машина Move были разработаны с нуля. Валидатор является основным механизмом безопасности Move, используемым для поддержания ресурсно-ориентированной модели программирования.

Move также предоставляет инструмент формальной верификации смарт-контрактов Move Prover, который может проводить строгие математические доказательства для контрактов.

Саморазвитие Web3 разработчиков — язык смарт-контрактов

смарт-контракты разработка инструментов

Для EVM-совместимых цепочек Solidity является наилучшим выбором, его зрелые инструменты разработки включают:

  • Hardhat: среда для компиляции, развертывания, тестирования и отладки
  • OpenZeppelin: предоставляет безопасную библиотеку стандартов смарт-контрактов
  • Foundry: разработка на основе Solidity

Основной фреймворк разработки Solana - это Anchor, который похож на Hardhat и упрощает процесс разработки на Solana.

Язык Move предлагает инновации в области базовой безопасности, но экосистема все еще находится на ранней стадии, инструменты разработки нуждаются в доработке.

Итог

Оценка языков смарт-контрактов обычно учитывает удобство использования, безопасность и экосистемные ресурсы.

Solidity имеет наибольшее влияние, обладает богатым набором инструментов разработки и библиотек, что способствует быстрой разработке.

Rust компенсирует недостаток безопасности Solidity, экосистема Solana развивается быстро.

Move имеет инновации в механизмах безопасности, порог для обучения довольно низок, но экосистема все еще находится на ранней стадии.

Саморазвитие веб3-разработчика — смарт-контракты

SOL-3.85%
MOVE-2.76%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 6
  • Репост
  • Поделиться
комментарий
0/400
hodl_therapistvip
· 15ч назад
Прощай, szabo все еще пишет код.
Посмотреть ОригиналОтветить0
BankruptWorkervip
· 15ч назад
Почему все занимаются смарт-контрактами?
Посмотреть ОригиналОтветить0
SchrodingerWalletvip
· 08-10 02:46
Вот и получается, что EVM повсюду.
Посмотреть ОригиналОтветить0
GateUser-44a00d6cvip
· 08-10 02:45
еще раз Виталик Бутерин бык
Посмотреть ОригиналОтветить0
MidnightTradervip
· 08-10 02:42
А, я уже делал это полгода назад.
Посмотреть ОригиналОтветить0
DaoTherapyvip
· 08-10 02:39
Три года назад я почти все в свою sol.
Посмотреть ОригиналОтветить0
  • Закрепить