1. Что мы строим?
Перевод | Автор оригинала: Loris
ЭПИЗОД 1
2 МЕСЯЦА НАЗАД
ЧТЕНИЕ 3 МИН.
Прежде чем мы углубимся в эту серию, давайте начнем с краткого обзора того, чего мы пытаемся достичь. Я также перечислю несколько предварительных условий, которые должны помочь в продолжении серии, но не беспокойтесь, ничего особенно радикального — в конце концов, мы строим «с нуля».
Децентрализованный Twitter
К концу этой серии у нас будет полнофункциональное приложение, похожее на Twitter, где каждый может использовать свой кошелек, чтобы подключиться и начать публиковать твиты.
Обратите внимание, что я уже развернул этот проект в devnet, так что вы можете немного поиграть.
Вот краткий обзор функций, которые он будет иметь:
- Он сможет интегрироваться с любым из кошельков в этом списке.
- Пользователи подключат свой кошелек для входа в приложение.
- Вошедшие пользователи смогут отправлять твиты длиной до 280 символов.
- Они также смогут добавить необязательное поле «тема», чтобы облегчить поиск твитов.
- Пользователи смогут читать твиты, не входя в систему.
- Пользователи смогут просматривать все твиты (от всех) или фильтровать результаты поиска по автору или темам.
По поводу реализации:
- Твиты будут храниться как их собственная учетная запись Solana, поэтому они станут общедоступными в блокчейне.
- При отправке новых твитов пользователи будут платить за транзакцию и хранилище, необходимое для хранения их твита в блокчейне.
- Мы будем использовать платформу Anchor, чтобы улучшить опыт нашего разработчика.
- Мы будем совершать вызовы RPC к блокчейну Solana — через библиотеку JavaScript Anchor — для извлечения и фильтрации твитов в блокчейне.
Не волнуйтесь, если не все вышеперечисленные пункты вам понятны, мы рассмотрим их в этой серии.
Кроме того, как только мы реализуем все эти функции, мы, вероятно, будем использовать их в качестве дополнительных статей. Например, мы могли бы позволить пользователям редактировать свои твиты или даже удалять их, чтобы они могли вернуть свои деньги, освобожденные от арендной платы — опять же, мы объясним, что такое «Аренда» и как она работает в Солане в этой серии.
Ты взволнован? Я в предвкушении! Хорошо, давайте пройдемся по нескольким предварительным условиям и начнем.
Предпосылки
Для этой серии не так много предварительных условий, так как мы собираемся создавать все с нуля. Однако некоторые приобретенные знания могут сделать ваше путешествие более плавным, и поэтому о них стоит упомянуть.
- Некоторый опыт программирования. Это может быть само собой разумеющимся, но мы собираемся создать приложение с нуля, и если у вас нет опыта программирования или у вас очень мало опыта, вы можете начать с более простого руководства, прежде чем отправиться в это путешествие.
- Знания блокчейна на высоком уровне. Хотя я постараюсь изо всех сил объяснить все концепции Соланы, с которыми мы сталкиваемся, наличие некоторых знаний высокого уровня о том, как работают блокчейны, очень поможет. Если вы еще новичок в мире Web 3, вам может быть полезно прочитать «Мое путешествие в Web 3».
- Rust опыт не требуется. Программы Solana написаны на Rust. Несмотря на то, что Rust обладает некоторыми довольно уникальными функциями, если у вас есть некоторый опыт программирования, вы сможете без особых проблем понять, что делает код Rust. Я обязательно кратко объясню некоторые из его особенностей, когда мы их рассмотрим, и предоставлю ссылки на дополнительную документацию, если вы заинтересованы.
- JavaScript. Помимо создания нашей программы Solana, мы создадим клиент JavaScript, который с ней взаимодействует. Точнее, мы создадим одностраничное приложение Vue 3 (SPA) для нашего внешнего интерфейса. Этот курс не посвящен созданию внешнего интерфейса, поэтому я очень быстро пройдусь по созданию внешнего интерфейса, но некоторые знания JavaScript/Vue 3 будут для вас ценным активом.
Вывод
Демо... проверить! Предпосылки... проверить! В следующем выпуске мы удостоверимся, что на нашей локальной машине есть все ему нужно начать работать с Solana и ее самым популярным фреймворком: Anchor.
И последнее важное замечание: проект, который мы создаем, имеет открытый исходный код и уже доступен на GitHub. Итак, если вам не терпится ознакомиться с кодом, вот ссылка.