Directual
Menu

Как превратить идею dApp в MVP

23 сентября 2022 г.

Когда-нибудь задумывались, какие шаги нужно предпринять, чтобы создать dApp? Мы всё разложили по полочкам! Предупреждаем: это длинное чтение. Возьмите чашку чего-нибудь горячего и узнайте, что нужно для начала.

Как превратить идею dApp в MVP

Немного странно публиковать статью о том, как создать dapp на Ethereum (или любом другом блокчейне) во время крипто-зимы, но я просто не могу удержаться. Многие из вас — мечтатели, как и мы: хотите, чтобы что-то произошло, чтобы жизнь других людей улучшилась, и, конечно, большие деньги в качестве награды за все усилия. Подходящее ли сейчас время, чтобы начать? Конечно, да.

Вот небольшой обучающий материал по dapp, на случай, если вы всё ещё не уверены, что это такое.

Frontend dapp основан на HTML или JavaScript веб-приложении, которое взаимодействует с блокчейном, например Ethereum. Само веб-приложение работает на InterPlanetary File System — одноранговой сети, которая делает всё это децентрализованным и распределённым.

Backend основан на смарт-контрактах, подключённых, опять же, к выбранному блокчейну. Такое подключение осуществляется через различные плагины, например MetaMask (который, кстати, поддерживается в Directual).

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

Зачем создавать dapp?

Если уж на то пошло, dapp — это круто, и рынок ещё далеко не освоен. Вспомните Bitcoin в своё время — тогда казалось, что ничего особенного, а теперь все от него в восторге, хотя у рынка бывали времена и получше. Чем раньше вы начнёте, тем лучше.

В чём разница между обычным приложением и dapp?

У обычных приложений и dapp есть одна общая черта: обмен данными. Шутка! Не совсем так.

Dapp используют блокчейны для обмена данными, а не центральные серверы. Всё зависит от участников блокчейна, отсюда и децентрализация. Никаких посредников.

Обычные приложения и dapp визуально выглядят одинаково, и распознать dapp можно по наличию крипто-токенов, которые можно использовать. Конечно, есть множество приложений, находящихся где-то посередине, но это общая идея. Реальные различия скрыты «под капотом».

Плюсы и минусы dapp

Преимуществ много. Вот лишь некоторые из них:

  • Отправка денег через dapp дешёвая (или бесплатная) и мгновенная. Никакой централизованной ерунды, никаких дополнительных комиссий поверх других комиссий. Всё благодаря смарт-контрактам.
  • Никаких утечек личных данных. Как бы мы все ни любили просматривать ужасные мемы и стыдные обновления в Facebook*, платформа процветает за счёт продажи личных данных. Децентрализованная организация практически означает, что ваши личные данные действительно являются личными.
  • Непробиваемая безопасность. Отсутствие мейнфрейма для взлома означает отсутствие цели для злоумышленников. Вся идея блокчейна крутится вокруг уникальных записей, которые почти невозможно угадать — на это ушли бы сотни лет.
  • Dapp можно применить в любой отрасли. Есть игровые dapp, dapp для управления, финансовые dapp, dapp для хранения данных — практически любые dapp. Самое приятное — все они по-прежнему выглядят и ощущаются так же, как традиционное приложение.

В рамках процесса «ешь свои овощи» вполне естественно, что ничто не идеально, включая наши любимые dapp:

  • У централизованной власти есть преимущества, которые блокчейн пока не полностью перенял, например обновления. Прежде чем внести изменения в платформу, необходимо достичь консенсуса большинства. Нельзя сказать, что это недостаток, но это точно замедляет процесс.
  • Пройти первые стадии роста с dapp непросто. Для нормальной работы нужна нормальная пользовательская база. Это же p2p-сеть, в конце концов! Эта проблема исчезает, как только ваша dapp набирает популярность.
  • Доступ к dapp для обычных пользователей не так уж прост. На данный момент для взаимодействия требуется браузер с поддержкой dapp. Пока это остаётся проблемой (а со временем она станет менее актуальной), важен грамотный онбординг.
  • Функциональность dapp зависит от используемых ими блокчейнов (см. ниже, как это работает). Это значит, что прежде чем dapp, опирающаяся на блокчейн, сможет предложить что-то поразительное, сам блокчейн должен быть способен это поддержать.

Типы dapp и их применение

Теперь перейдём к деталям dapp и разберёмся, какими они бывают. Есть три основные категории dapp:

Тип I

У такой dapp есть собственный блокчейн. Как Bitcoin, Litecoin, Ethereum, Dash и многие другие. Это означает, что эти приложения не зависят от какого-либо другого блокчейна для работы, поскольку практически весь продукт работает сам по себе.

Тип II

Эти dapp зависят от выбранного блокчейна в плане своей функциональности. У них может быть собственный токен, подключённый к основному блокчейну. Такие токены могут быть настроены для использования именно с этой dapp. У нас есть похожая вещь — наши D-coins размещены в Ethereum и могут использоваться для оплаты функций и ресурсов платформы.

Примечание: мы построили наш биллинг и включили обмен d-coin с помощью самой no-code функциональности Directual!

Тип III

Последняя ступень, dapp Типа III используют другие dapp Типа II для работы. Это может включать любую функциональность, которую предлагают dapp Типа II, без необходимости создавать эту функциональность самостоятельно.

Отрасли применения dapp

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

Dapp для соцсетей

Вот преимущества децентрализации! Не нужно бояться властолюбивого модератора, который захочет закрыть всё, что сочтёт недостойным. Сообщество само решает, что остаётся, а что уходит.

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

Игры

Одно из самых интересных и быстро развивающихся направлений. CryptoKitties — отличный пример успешной игровой dapp web3.

Играете, получаете токенизированный актив, который затем растёт в цене, и продаёте его заинтересованному покупателю с прибылью. Такая игра решает сразу множество разных проблем: пользовательскую базу легко создать (что помогает работе сети), на монеты есть активный спрос, и это всё ещё и весело!

С игровыми dapp можно реализовать практически что угодно, и их перспективы определённо стоит изучить, если вы работаете в игровой индустрии, особенно в мобильных играх (которые уже превзошли все остальные игровые направления вместе взятые).

Управление

Голосование больше не скучное и не сомнительное! Со смарт-контрактами сообщество может надёжно голосовать по списку предложений в установленный срок и подтверждать свои голоса токенами. И всё это полностью анонимно!

Самое приятное — это по-настоящему демократично. Никто не сможет подделать ваши «бюллетени», вас могут вознаградить за участие, и это действительно имеет значение.

Реклама и сбор средств

Вы используете Adblock? Я использую. Практически все используют, если только не гуглят что-то стыдное в режиме инкогнито. Реклама навязчива, повторяется и лишена вдохновения, и мы уже практически перестали её замечать.

Чего не хватает, так это вознаграждения пользователю за время, потраченное на просмотр всей этой рекламы, и лучшей системы для рекламодателей и платформ, размещающих рекламу. Пользователи могут зарабатывать токены, просто прокручивая сайт с рекламой. Рекламодатели могут устанавливать линейные выплаты сайтам с размещённой рекламой в зависимости от времени, проведённого пользователем на просмотре. Всё это уже реализовано, и всё это можно отслеживать без ущерба для приватности.

Сбор средств максимально прост: пользователи могут отправить взносы блогерам в несколько кликов, без каких-либо скрытых условий.

Финансы (ну конечно!)

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

Кроме того, всё полностью безопасно, и крипто-активы находят всё больше доступных путей в реальный мир. Децентрализованная валюта — это будущее, потому что, как вы знаете, реальные валюты практически всех стран ничем не обеспечены. Это всё условность. По крайней мере, крипто зарабатывается трудом и имеет под собой какую-то основу.

Как создать dapp

Вы наконец добрались до самой интересной части этой чрезмерно длинной статьи! Я избавлю вас от лишних хлопот и объясню только важные моменты: остальному вы научитесь в процессе. Только одна вещь, прежде чем продолжить:

Просто. Начните. Не впадайте в паралич анализа. Пробуйте разные вещи и смотрите, как они работают. Делайте это сразу же, маленькими шагами.

А теперь — как это сделать:

Технологический стек

Всё не так сложно, если только вы сами не захотите усложнить. Стек может сильно отличаться в зависимости от вашей идеи (выбор большой, см. выше). Вам понадобятся:

  • Выбранный блокчейн
  • Выбранные frontend-платформы (мобильные, веб или оба варианта)
  • Набор функций вашей dapp
  • Инструменты разработки, совместимые с разработкой dapp (не стесняясь скажу, что Directual как раз таков)

Что касается веб-frontend — подойдёт что угодно. Вы можете начать с Directual, а затем расширяться на другие платформы или создать всё сами с помощью React.js, Node.js и Web3.js. Что касается мобильных приложений, Swift и React Native — ваши лучшие варианты (если только вы не увлекаетесь кроссплатформенной разработкой — это тоже довольно круто и просто!).

Пять шагов, которым нужно следовать

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

Вам также, вероятно, придётся изучить децентрализованные функции вашей dapp, такие как аналитика и API.

Шаг 1: Смарт-контракты.

Независимо от того, что должен делать ваш смарт-контракт (а это может быть множество вещей — транзакции, алгоритмы или что-то ещё), вам нужно выбрать блокчейн. Ethereum — самый популярный выбор. У многих людей уже есть кошельки в Ethereum, но это не помешает вам создать крипто-кошелёк, и пользователям не обязательно знать, на каком блокчейне он находится.

Шаг 2: Backend

Если вашему приложению потребуется много хранилища, синхронизированная отчётность или другая дополнительная функциональность, вам следует спланировать это заранее и включить в объём проекта. Для этого понадобится веб-решение, размещённое на сервере. Да, не все части dapp обязательно должны быть децентрализованы.

Будет полезно иметь админ-панель, способную предоставлять дополнительные функции, контроль над платформой и другие вещи, не включённые в базовые dapp.

Всё ещё непонятно? Ничего страшного. Начните с малого — для этого можно попробовать пройти по сценарию, который у нас есть в Directual, о том, как можно создать и использовать простой кошелёк.

Пример сценария ETH-кошелька в Directual

Стройте функциональность постепенно, но сначала сосредоточьтесь на основном. Не поддавайтесь искушению добавить всё, что придумали, прежде чем дать клиентам возможность попробовать вашу dapp.

Шаг 3: Frontend

Вам понадобится приличный конструктор frontend, чтобы начать, Directual будет хорошим выбором. Не нужно перегибать палку с прототипом, достаточно, чтобы он работал. Улучшить его всегда можно позже.

Однако планируйте заранее, как именно вы хотите визуально представить это. Нет ничего постыдного в том, чтобы черпать вдохновение из других похожих dapp.

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

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

Шаг 4: Тестирование, тестирование, тестирование.

Это рутина, которую нельзя откладывать в долгий ящик. Каждая новая сборка вашей dapp должна тщательно тестироваться. Тестирование frontend — дело простое и стандартное, однако тестирование транзакций и смарт-контрактов сложнее. Вам понадобится тестовая сеть, чтобы попробовать, как всё работает, перед деплоем.

С API-запросами и тестированием базы данных в Directual это сделать довольно легко — можно использовать отдельную тестовую кнопку, чтобы посмотреть, как всё работает, и получить ли вы правильный ответ.

Шаг 5: Деплой, поддержание dapp в актуальном состоянии

Самая приятная и (иногда) самая горькая часть. Запустите свою dapp в продакшн и начните получать обратную связь от пользователей. Сосредоточьтесь на полученных отзывах, продолжайте улучшать свою dapp на их основе и продолжайте учиться. Я знаю, что всё это довольно базовые вещи, но по крайней мере теперь вы знаете, чего не знаете. Это уже половина успеха!

Послесловие

В конце концов, знание — это всего лишь знание. Оно ничего не стоит, если не закалить его опытом. Если вы хотите протестировать идею web3.0 приложения, сделайте быстрый и грубый MVP — ровно настолько, чтобы показать, как должен работать ваш продукт. Спросите мнение любого, кого знаете, и посмотрите, какую обратную связь получите.

Самое важное — не сдавайтесь. Продолжайте пробовать, улучшать и учиться.

Если у вас есть к нам вопросы или вы хотите узнать больше о возможностях Directual в области web3, напишите нам на hello@directual.com.

На этом всё, спасибо за прочтение!

* Facebook и Instagram принадлежат Meta Platforms Inc., признанной экстремистской организацией; её деятельность запрещена на территории Российской Федерации.

Никита Навалихин
Сооснователь и технический директор Directual
← Назад к списку