Сердцем любой экосистемы децентрализованных приложений, DApps, является базовый технологический стек. Для Ethereum (ETH) это консенсус «Накамото», среда выполнения Ethereum Virtual Machine (EVM) и язык программирования Solidity. Вместе эти технологии позволили разработчикам смарт-контрактов превратить децентрализованное финансирование (DeFi) из концепции в реальность.
Для DeFi, чтобы сделать следующий скачок — к массовому внедрению — масштабируемость — это технологическое требование, которое привлекает наибольшее внимание. Но часто упускаемый из виду, но не менее важный аспект платформ первого уровня — это их подход к разработке смарт-контрактов.
В то время как Solidity и EVM являются основными технологиями, которые позволили Ethereum, несомненно, стать пионером DeFi, пионеры также совершают все ошибки. Вы никогда не задумывались, почему сегодня кажется, что существует бесконечная серия взломов и эксплойтов DeFi? Это результат подхода к программированию, который делает невероятно сложным безопасное управление токенами. Потому что когда создавался Эфириум, DeFi еще не существовало.
Но исправить это непросто. Серьезные изменения в Solidity и EVM невозможны, так как это нарушит работу большинства уже созданных Dapp. Таким образом, у новых платформ есть реальная возможность учиться и улучшать опыт разработчиков, потому что улучшенные Dapp, которые создают эти разработчики, могут обеспечить следующую волну внедрения DeFi.
Почему разработка DeFi сложна для Ethereum
Будь то токены для децентрализованного заимствования и кредитования, токены для игры NFT или произведения искусства или токены для производного финансового инструмента, они лежат в основе практически каждого варианта использования в DeFi и криптовалюте.
Однако единственным токеном, который изначально понимает платформа Ethereum, является ETH. Все остальные токены, будь то ERC-20, 721, 1155 или любой другой стандарт, существуют только как переменные (обычные старые числа) внутри каждого смарт-контракта.
Токен Tether — USDT — представляет собой список счетов и связанных балансов внутри смарт-контракта USDT. То же самое касается Shiba Inu (SHIB) и любого другого токена, построенного на Ethereum. Вот почему вы не можете обменять ETH на Uniswap (UNI), и вместо этого вы должны, как ни странно, обменять Wrap-ETH (wETH), который является токеном ERC-20, обеспеченным ETH, находящимся под стражей.
Это приносит проблемы. Вы не можете «отправить» токены от одного человека к другому, потому что токены не живут в кошельке пользователя. Они живут только как баланс, связанный со счетом внутри каждого отдельного контракта.
Чтобы обменять USDT на SHIB, отправляется сообщение о дебетовании вашего счета в контракте USDT и кредитовании вашего счета в контракте SHIB. Но USDT, дебетуемый с вашего счета, должен быть переведен на какой-либо другой счет в контракте USDT, и аналогичным образом SHIB, зачисленный на ваш счет, должен поступать с какого-либо другого счета в контракте SHIB.
Из-за бремени внедрения нового токена в каждый смарт-контракт и для разработчиков, обеспечивающих безопасность их контрактов во всех возможных сценариях, разработчики тратят почти все свое время, до 90%, на тестирование и проверку. Это почти не оставляет им времени для создания того, что они действительно хотят: функциональности DeFi.
С таким разочаровывающим опытом разработчика, есть ли лучший способ?
Токены как основа развития DeFi
DeFi — это все о токенах. Это означает, что токены не должны быть второстепенными в процессе разработки — они должны быть впереди и в центре — прямо в самом ядре платформы.
Вот почему правильный язык программирования может ускорить разработку не только одной платформы, но и целой отрасли. Примером того, как это делается, является Radix, протокол первого уровня, который использует «ориентированное на активы» программирование и представляет его со своим языком программирования Scrypto.
Как это работает? Во-первых, токены больше не определяются внутри смарт-контракта, как в описанном выше списке счетов и балансов. Вместо этого токены живут на отдельном уровне, следуя правилам, которые применяет платформа. Подобно тому, как платформа Биткойн обеспечивает невозможность двойного расходования, слива или потери BTC в транзакции, так и программирование, ориентированное на активы, обеспечивает такое же логическое поведение, но для каждого токена, созданного на платформе.
При соблюдении этих правил токены приобретают те же свойства, что и физические монеты в вашем кармане. Вы можете физически отдать его кому-то другому, но платформа гарантирует, что токен не может находиться в двух местах одновременно, а также не может исчезнуть.
Учитывая эту физическую природу поведения, разработчики DeFi могут затем создавать DApp DeFi так, как они интуитивно рисовали бы их на доске. Такие слова, как «взять» и «положить» в языке программирования, на самом деле берут и кладут токены на места.
Больше не нужно определять правила финансов в каждом отдельном смарт-контракте с нуля, как в случае с Solidity. Radix предоставляет разработчикам все инструменты, необходимые для быстрого создания безопасного кода, что повышает их производительность.
В конечном счете, перейдут ли разработчики к новой парадигме или предпочтут старую, зависит от точного баланса между сетевым эффектом старой и преимуществами новой.
Изучение нового подхода к разработке DeFi требует работы. И это особенно рискованно, если экосистема, для которой вы строите, начинается с нуля, по сравнению с экосистемой с тысячами DApp, зрелыми сообществами разработчиков и миллионами пользователей.
Но, как мы видели в 2021 году, новые несушки могут быстро расти. При правильном исполнении есть шанс увидеть в городе нового выскочку. Тот, который вполне может стимулировать сообщество разработчиков, сосредоточенных на массовом внедрении DeFi.
Отказ от ответственности. Cointelegraph не поддерживает какой-либо контент или продукт на этой странице. Хотя мы стремимся предоставить вам всю важную информацию, которую мы можем получить, читатели должны провести собственное исследование, прежде чем предпринимать какие-либо действия, связанные с компанией, и нести полную ответственность за свои решения, и эта статья не может рассматриваться как инвестиционный совет.