Интервью с отцом языка Move: почему Sui Move подходит для создания продуктов Web3?
На днях мы поговорили с техническим директором Mysten Labs и создателем языка программирования Move Сэмом Блэкшером о том, почему он разработал новый язык программирования смарт-контрактов Sui Move, о возможностях масштабирования Sui и о преимуществах децентрализованных технологий для строителей.
Следующее содержание интервью:
Q1: Можете ли вы рассказать, что такое языки программирования, на что разработчики обращают внимание при выборе языка программирования, и что побудило вас разработать свой собственный язык программирования?
Язык программирования — это инструмент для дружественного, безопасного, эффективного и четкого взаимодействия с компьютером. В языке программирования самое важное — это наличие точно определенной семантики. Суть языка программирования заключается в том, что он предназначен для конкретной области или конкретной задачи.
Move возник из проекта Libra от Facebook. Моей задачей тогда было разработать функции смарт-контрактов для Libra. После исследований я обнаружил, что существующие языки смарт-контрактов во многих случаях разочаровывают разработчиков.
Умные контракты в основном выполняют две задачи: определяют типы активов и их правила, а также проверяют стратегии контроля доступа. Цель дизайна Move состоит в том, чтобы предоставить хорошую абстракцию для этих основных функций, позволяя программистам безопасно и эффективно писать код, не изобретая колесо каждый раз.
Q2: Sui использует вариант Move, называемый Sui Move. Что побудило к этим изменениям? Какие особенности Sui Move идеально подходят для создания продуктов в Web3?
Факторы, способствующие этим изменениям, включают:
Проект Libra изначально был разработан для создания соблюдающей нормативные требования платежной сети, с некоторыми ограничениями. Но в более общем пространстве Web3 мы надеемся, что вещи будут как можно более свободными.
Мы используем объектно-ориентированную модель данных в Sui, что позволяет программистам напрямую управлять активами, не прибегая к сложной бухгалтерии. Это не только удобно для программистов, но и является ключом к параллельной обработке и горизонтальному масштабированию Sui.
Мы также разработали функцию программируемого торгового блока, которая позволяет выполнять несколько операций в одной сделке.
Эти изменения делают Sui Move более подходящим для создания продуктов Web3, обеспечивая большую гибкость, эффективность и масштабируемость.
Q3: Можете поделиться дополнительной информацией о программируемых торговых блоках и их функциях?
Программируемые торговые блоки позволяют выполнять несколько операций в одном сделке, подобно шведскому столу, а не отдельным платным киоскам с едой. Это приносит несколько преимуществ:
Снизить комиссии за gas, так как можно упаковать несколько операций в одну транзакцию.
Уменьшение количества одобрений.
Обеспечить атомарность, гарантируя, что несколько связанных операций либо все успешны, либо все неудачны.
Разрешить упаковку гетерогенных сделок, например, завершить несколько шагов в одной сделке, таких как вывод активов из мультиподписного кошелька, использование активов, хранение вознаграждений и т.д.
Содействие "временным объединениям", различные компоненты могут легче работать вместе в одной транзакции без необходимости тесной связи.
Этот дизайн упрощает выполнение сложных операций, одновременно сохраняя независимость и гибкость отдельных компонентов.
Q4: Как вы оцениваете опыт разработки Sui Move по сравнению с другими языками программирования Web3?
Согласно отзывам разработчиков, Sui Move предлагает более эффективный и безопасный опыт разработки. Например, некоторые команды разработчиков сообщили, что завершили проект с помощью Sui Move всего за два месяца, в то время как с Solidity это могло занять восемь месяцев, и они чувствуют себя более уверенно в безопасности кода.
Это улучшение возникло из нашего исследования проблем существующих языков, таких как Solidity, а также целенаправленного проектирования решений. Sui Move был разработан специально для решения реальных проблем, возникающих при разработке смарт-контрактов, поэтому, когда разработчики переходят на Sui Move, они ощущают значительные улучшения.
Несмотря на то, что первоочередное преимущество очень важно, в данном случае преимущество запоздалого входа может оказаться даже более значимым. Мы можем извлечь уроки из опыта предыдущих поколений, чтобы создать язык, который лучше соответствует текущим потребностям.
Q5: Как дизайн Sui Move поддерживает массовое принятие Web3, низкую задержку, низкие затраты и масштабируемость?
Цель Sui заключается в достижении горизонтальной масштабируемости, что означает, что увеличение аппаратных ресурсов может неограниченно повысить пропускную способность системы. Этот дизайн избегает проблем, с которыми сталкиваются другие блокчейн-платформы, когда достигается предельная ёмкость, таких как рост цен на газ, увеличение задержек и т.д.
Для достижения этой цели мы использовали объектно-ориентированную модель данных, организовав глобальное состояние как отображение идентификаторов объектов на объекты. Эта структура облегчает шардирование и масштабирование.
В то же время мы разработали торговую структуру, подходящую для этой модели данных, которая позволяет эффективно извлекать и обновлять данные из хранилища ключ-значение. Этот дизайн позволяет Sui масштабироваться с увеличением числа пользователей, сохраняя при этом низкую задержку.
В6: Как вы объясните потенциал децентрализованных технологий разработчикам Web2, которые их сомневаются?
Блокчейн и криптовалюты по своей сути являются технологиями, устраняющими трение. Они могут устранить препятствия, существующие в традиционных системах, делая передачу информации и ценностей более плавной и эффективной.
Типичным примером является эскроу-агент в сделках с недвижимостью. С помощью смарт-контрактов мы можем заменить традиционных посредников прозрачным кодом, что снижает затраты и повышает эффективность.
Говоря более широко, технология блокчейн может устранить барьеры интероперабельности между приложениями. Представьте себе, если данные, товары и ценности могли бы свободно перемещаться между различными приложениями, это открыло бы огромные возможности для инноваций и пользовательского опыта.
Для разработчиков эти новые технологии подобны новому "суперспособности", позволяя им создавать более привлекательные и инновационные продукты.
Q7: Какие у вас ожидания по поводу будущего развития Sui Move?
Наше текущее внимание сосредоточено на улучшении Sui Move на основе отзывов ранних разработчиков. Основное внимание уделяется следующим аспектам:
Повышение масштабируемости и гибкости пакета, чтобы разработчики могли легче обновлять и расширять свой код, при этом сохраняя свои обязательства перед пользователями.
Введение новых языковых особенностей, таких как перечисляемые типы, для повышения выразительности языка.
Улучшить интеграцию Move с фронтенд-кодом, чтобы сделать процесс разработки всего приложения более плавным.
Исследуйте, как увеличить долю кода Move в приложении, чтобы повысить общую безопасность.
Сделать программу Move более понятной и удобной для использования не-программистами на Move.
В целом, мы стремимся сделать Sui Move более мощным, гибким и удобным языком разработки смарт-контрактов для поддержки построения приложений следующего поколения Web3.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
Основатель языка Move интерпретирует Sui Move: почему он стал инструментом для создания продуктов Web3
Интервью с отцом языка Move: почему Sui Move подходит для создания продуктов Web3?
На днях мы поговорили с техническим директором Mysten Labs и создателем языка программирования Move Сэмом Блэкшером о том, почему он разработал новый язык программирования смарт-контрактов Sui Move, о возможностях масштабирования Sui и о преимуществах децентрализованных технологий для строителей.
Следующее содержание интервью:
Q1: Можете ли вы рассказать, что такое языки программирования, на что разработчики обращают внимание при выборе языка программирования, и что побудило вас разработать свой собственный язык программирования?
Язык программирования — это инструмент для дружественного, безопасного, эффективного и четкого взаимодействия с компьютером. В языке программирования самое важное — это наличие точно определенной семантики. Суть языка программирования заключается в том, что он предназначен для конкретной области или конкретной задачи.
Move возник из проекта Libra от Facebook. Моей задачей тогда было разработать функции смарт-контрактов для Libra. После исследований я обнаружил, что существующие языки смарт-контрактов во многих случаях разочаровывают разработчиков.
Умные контракты в основном выполняют две задачи: определяют типы активов и их правила, а также проверяют стратегии контроля доступа. Цель дизайна Move состоит в том, чтобы предоставить хорошую абстракцию для этих основных функций, позволяя программистам безопасно и эффективно писать код, не изобретая колесо каждый раз.
Q2: Sui использует вариант Move, называемый Sui Move. Что побудило к этим изменениям? Какие особенности Sui Move идеально подходят для создания продуктов в Web3?
Факторы, способствующие этим изменениям, включают:
Проект Libra изначально был разработан для создания соблюдающей нормативные требования платежной сети, с некоторыми ограничениями. Но в более общем пространстве Web3 мы надеемся, что вещи будут как можно более свободными.
Мы используем объектно-ориентированную модель данных в Sui, что позволяет программистам напрямую управлять активами, не прибегая к сложной бухгалтерии. Это не только удобно для программистов, но и является ключом к параллельной обработке и горизонтальному масштабированию Sui.
Мы также разработали функцию программируемого торгового блока, которая позволяет выполнять несколько операций в одной сделке.
Эти изменения делают Sui Move более подходящим для создания продуктов Web3, обеспечивая большую гибкость, эффективность и масштабируемость.
Q3: Можете поделиться дополнительной информацией о программируемых торговых блоках и их функциях?
Программируемые торговые блоки позволяют выполнять несколько операций в одном сделке, подобно шведскому столу, а не отдельным платным киоскам с едой. Это приносит несколько преимуществ:
Снизить комиссии за gas, так как можно упаковать несколько операций в одну транзакцию.
Уменьшение количества одобрений.
Обеспечить атомарность, гарантируя, что несколько связанных операций либо все успешны, либо все неудачны.
Разрешить упаковку гетерогенных сделок, например, завершить несколько шагов в одной сделке, таких как вывод активов из мультиподписного кошелька, использование активов, хранение вознаграждений и т.д.
Содействие "временным объединениям", различные компоненты могут легче работать вместе в одной транзакции без необходимости тесной связи.
Этот дизайн упрощает выполнение сложных операций, одновременно сохраняя независимость и гибкость отдельных компонентов.
Q4: Как вы оцениваете опыт разработки Sui Move по сравнению с другими языками программирования Web3?
Согласно отзывам разработчиков, Sui Move предлагает более эффективный и безопасный опыт разработки. Например, некоторые команды разработчиков сообщили, что завершили проект с помощью Sui Move всего за два месяца, в то время как с Solidity это могло занять восемь месяцев, и они чувствуют себя более уверенно в безопасности кода.
Это улучшение возникло из нашего исследования проблем существующих языков, таких как Solidity, а также целенаправленного проектирования решений. Sui Move был разработан специально для решения реальных проблем, возникающих при разработке смарт-контрактов, поэтому, когда разработчики переходят на Sui Move, они ощущают значительные улучшения.
Несмотря на то, что первоочередное преимущество очень важно, в данном случае преимущество запоздалого входа может оказаться даже более значимым. Мы можем извлечь уроки из опыта предыдущих поколений, чтобы создать язык, который лучше соответствует текущим потребностям.
Q5: Как дизайн Sui Move поддерживает массовое принятие Web3, низкую задержку, низкие затраты и масштабируемость?
Цель Sui заключается в достижении горизонтальной масштабируемости, что означает, что увеличение аппаратных ресурсов может неограниченно повысить пропускную способность системы. Этот дизайн избегает проблем, с которыми сталкиваются другие блокчейн-платформы, когда достигается предельная ёмкость, таких как рост цен на газ, увеличение задержек и т.д.
Для достижения этой цели мы использовали объектно-ориентированную модель данных, организовав глобальное состояние как отображение идентификаторов объектов на объекты. Эта структура облегчает шардирование и масштабирование.
В то же время мы разработали торговую структуру, подходящую для этой модели данных, которая позволяет эффективно извлекать и обновлять данные из хранилища ключ-значение. Этот дизайн позволяет Sui масштабироваться с увеличением числа пользователей, сохраняя при этом низкую задержку.
В6: Как вы объясните потенциал децентрализованных технологий разработчикам Web2, которые их сомневаются?
Блокчейн и криптовалюты по своей сути являются технологиями, устраняющими трение. Они могут устранить препятствия, существующие в традиционных системах, делая передачу информации и ценностей более плавной и эффективной.
Типичным примером является эскроу-агент в сделках с недвижимостью. С помощью смарт-контрактов мы можем заменить традиционных посредников прозрачным кодом, что снижает затраты и повышает эффективность.
Говоря более широко, технология блокчейн может устранить барьеры интероперабельности между приложениями. Представьте себе, если данные, товары и ценности могли бы свободно перемещаться между различными приложениями, это открыло бы огромные возможности для инноваций и пользовательского опыта.
Для разработчиков эти новые технологии подобны новому "суперспособности", позволяя им создавать более привлекательные и инновационные продукты.
Q7: Какие у вас ожидания по поводу будущего развития Sui Move?
Наше текущее внимание сосредоточено на улучшении Sui Move на основе отзывов ранних разработчиков. Основное внимание уделяется следующим аспектам:
Повышение масштабируемости и гибкости пакета, чтобы разработчики могли легче обновлять и расширять свой код, при этом сохраняя свои обязательства перед пользователями.
Введение новых языковых особенностей, таких как перечисляемые типы, для повышения выразительности языка.
Улучшить интеграцию Move с фронтенд-кодом, чтобы сделать процесс разработки всего приложения более плавным.
Исследуйте, как увеличить долю кода Move в приложении, чтобы повысить общую безопасность.
Сделать программу Move более понятной и удобной для использования не-программистами на Move.
В целом, мы стремимся сделать Sui Move более мощным, гибким и удобным языком разработки смарт-контрактов для поддержки построения приложений следующего поколения Web3.