Web3 разработчикам к прочтению: полное объяснение языков смарт-контрактов

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

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

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

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

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

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

В этой статье будет рассмотрено три аспекта языков смарт-контрактов: EVM система, Solana система и Move система.

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

EVM система

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

На блокчейнах Ethereum и совместимых с EVM наиболее популярными языками являются Solidity и Vyper, а также доступны Yul, Yul+, Fe и Huff.

Солидность была впервые предложена техническим директором Эфириума Гэвином Вудом. Это объектно-ориентированный язык программирования, сильно вдохновленный C++, Python и JavaScript. Solidity определяет стандарт ABI для взаимодействия с смарт-контрактами.

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

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

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

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

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

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

Solana сеть

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

Солана называет смарт-контракты программами на цепочке, которые в основном написаны на языке Rust. У Соланы есть уникальная виртуальная машина SVM и байткод SBF.

Ключевой компонент SVM Sealevel реализует параллельную обработку. Смарт-контракты Solana определяют состояние чтения и записи во время выполнения, что позволяет параллельно выполнять транзакции без конфликтов.

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

Теоретически все языки, поддерживающие компиляцию в LLVM IR, могут использоваться для написания смарт-контрактов Solana, но на практике поддерживаются только Rust и Solang.

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

Rust является основным языком, официально поддерживаемым Solana, обладая большей стабильностью; основное преимущество Solang заключается в его совместимости с языком Solidity.

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

Move система

Move — это язык смарт-контрактов, разработанный для проекта Diem от Meta, который отличается защитой типов ресурсов первого класса, гибкостью и безопасной проверяемостью.

Aptos и Sui используют Move в качестве основного языка смарт-контрактов. Aptos унаследовал Diem Move, Sui использует кастомизированную Sui Move.

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

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

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

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

Для разработчиков EVM-совместимых цепей Solidity является предпочтительным. Основные инструменты для разработки включают:

  • Hardhat: среда разработки для компиляции, развертывания, тестирования и отладки приложений на Ethereum.
  • OpenZeppelin: предоставляет открытые библиотеки безопасных смарт-контрактов.
  • Foundry: фреймворк, ориентированный на Solidity, для создания, тестирования и развертывания смарт-контрактов.

Solana является вторым выбором после Ethereum, основным фреймворком разработки является Anchor, который упрощает процесс разработки на Solana.

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

Итог

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

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

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

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

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

MOVE4.12%
SOL2.23%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 9
  • Репост
  • Поделиться
комментарий
0/400
TeaTimeTradervip
· 08-05 01:54
Убегаю, убегаю, учу на ходу и продаю смарт-контракты.
Посмотреть ОригиналОтветить0
ponzi_poetvip
· 08-04 12:19
Чувствую, что смарт-контракты тратят вычислительную мощность.
Посмотреть ОригиналОтветить0
LiquidityHuntervip
· 08-04 01:45
web3 гений заработка
Посмотреть ОригиналОтветить0
CodeSmellHuntervip
· 08-02 17:54
солидность действительно хороша
Посмотреть ОригиналОтветить0
OnchainArchaeologistvip
· 08-02 06:12
сол не стоит и говорить о старых блюдах
Посмотреть ОригиналОтветить0
MemeTokenGeniusvip
· 08-02 06:09
Ах, начинать с нуля - это действительно убивает меня.
Посмотреть ОригиналОтветить0
BearMarketSagevip
· 08-02 06:09
Кто еще использует sol, ха-ха?
Посмотреть ОригиналОтветить0
MainnetDelayedAgainvip
· 08-02 06:03
Согласно записям базы данных, концепция, предложенная в 90-х годах, была реализована только через 30 лет. Ждем, когда расцветет.
Посмотреть ОригиналОтветить0
ArbitrageBotvip
· 08-02 06:03
Целый день изучал контракт, но так и не получил ни одного Кошелек Адрес.
Посмотреть ОригиналОтветить0
Подробнее
  • Закрепить