Присоединиться к Injective еще никогда не было так просто. Независимо от того, являетесь ли вы серверным или внешним разработчиком, инженером по смарт-контрактам или оператором узла, Injective предлагает беспрецедентный опыт для всех. В этом руководстве представлено введение в разработку Injective, а также ссылки и ссылки, где вы можете глубже погрузиться в темы, которые вас интересуют больше всего.
Injective предоставляет уникальный набор мощных финансовых модулей Web3, что значительно упрощает процесс разработки. Сюда входит модуль книги заказов на цепочке, к которому может подключиться любое dApp для немедленной институциональной ликвидности на цепочке. Разработчики могут легко подключать и использовать модули вместе для быстрой итерации новых приложений, что невозможно ни на каком другом L1, требующем разработки приложений с нуля.
В руководстве представлен обзор разработки и освещены некоторые модули, такие как модуль обмена, который можно использовать для создания новаторских приложений с непревзойденной ликвидностью с первого дня.
Уровень смарт-контрактов WebAssembly (WASM) компании Injective предоставляет широкий спектр финансовых примитивов, таких как общая ликвидность в цепочке, потоки цен Oracle, кросс-цепочечное соединение и уникальные возможности исполнения, что позволяет разрабатывать сложные децентрализованные приложения (dApps).
Уникальной особенностью Injective является поддержка самоисполняющихся смарт-контрактов, нового примитива, который расширяет возможности проектирования приложений и позволяет создавать полностью децентрализованные, не требующие разрешений приложения. Injective также разработан для облегчения взаимодействия блокчейнов, обеспечивая бесшовную интеграцию и кросс-цепную коммуникацию, тем самым открывая новые возможности для инновационных продуктов и услуг, которые одновременно используют преимущества нескольких сетей блокчейнов. Приверженность Injective взаимодействию блокчейнов, наряду с его сложной платформой смарт-контрактов и примитивами финансовой инфраструктуры, позиционирует его как ведущую силу в разработке более открытой, справедливой и децентрализованной финансовой системы.
Чтобы начать разработку собственных смарт-контрактов Wasm, сначала необходимо установить injectived . injectived — это интерфейс командной строки (CLI) и демон, который подключается к Injective, позволяя разработчикам взаимодействовать с ним. Он необходим для операций узла/валидатора, создания программных учетных записей, счетов финансирования и запуска смарт-контрактов на Injective. В документации приведены инструкции по установке injectived с использованием образа Docker, что упрощает процесс настройки для разработчиков. Однако, если вы предпочитаете не использовать Docker, вы можете установить injectived из двоичного файла и следовать предоставленным инструкциям по установке. В документации также приведены советы по использованию injectived как с основной сетью Injective, так и с тестовой сетью, указав правильный флаг --node для каждой из них.
Связанная выше документация также охватывает основы создания и взаимодействия со смарт-контрактами на Injective, включая структуру базового смарт-контракта и как развернуть его через injectived . Она предоставляет примеры смарт-контрактов на основе Wasm, включая контр-контракт, который увеличивает и сбрасывает счетчик до заданного значения. Другие замечательные ресурсы для изучения разработки CosmWasm включают CosmWasm Academy и Area-52 , два замечательных онлайн-курса и бесплатные курсы.
Две ссылки, которые следует выделить, — это репозиторий injective-ts-examples на GitHub, где можно просмотреть базовые примеры, например, как отправить транзакцию и запросить данные в Injective. И второй раздел, «Создание dApps» , чтобы узнать, как создать с нуля такое приложение, как DEX, а также создать смарт-контракт и взаимодействовать с ним через модуль injective-ts.
Архитектура Injective разработана для облегчения создания и торговли на произвольных спотовых и деривативных рынках, включая управление лимитными ордерами в цепочке, исполнение сделок, сопоставление ордеров и расчет транзакций через модуль обмена Injective . Этот комплексный подход обеспечивает бесперебойный торговый процесс, от размещения ордера до расчета, все управляется в цепочке.
Две основные услуги играют центральную роль в торговом процессе:
Chain API: изначально разработанный для операций записи, Chain API напрямую запрашивает состояние блокчейна из узла, предоставляя немедленный и прямой доступ к текущему состоянию блокчейна. Это включает ограниченный набор запросов API для чтения данных, фокусируясь на немедленном и текущем состоянии блокчейна.
API индексатора: исключительно для операций только для чтения. API индексатора реконструирует состояние блокчейна на основе событий, исходящих из цепочки, предлагая комплексное представление о состоянии сети без прямого доступа к блокчейну. Предлагает дополнительные функции, такие как более широкий набор методов, поддержка потоковой передачи, интеграция gRPC и возможность извлечения исторических данных, что делает его более универсальным инструментом для извлечения данных по сравнению с Chain API.
Жизненный цикл торговли начинается с подписания трейдерами транзакций, содержащих сообщения о заказах. Эти транзакции затем передаются на инъективный узел, где они добавляются в мемпул и в конечном итоге включаются в блок. В течение периода обработки блока выполняется обработчик для каждого типа сообщения. Немедленная обработка применяется к сообщениям об отмене и ликвидации заказов, а сообщения о создании заказов ставятся в очередь для последующей обработки.
В конце блока начинается процесс пакетного аукциона для сопоставления заказов. Рыночные ордера исполняются против покоящейся книги заказов, а лимитные ордера сопоставляются друг с другом и с покоящейся книгой заказов, в результате чего получается непересекающаяся книга заказов. Затем цепочка соответствующим образом распределяет средства, создавая позиции для сделок с деривативами и обменивая активы на спотовые сделки. События, содержащие информацию о торговле и расчетах, отправляются цепочкой, которые затем индексируются серверной частью API Injective Exchange и передаются всем подписанным трейдерам.
Полную документацию SDK с дополнительными руководствами и примерами можно найти здесь .
Вариант 1: интерфейс командной строки
Внедренный CLI — мощный инструмент взаимодействия с узлом. Прежде чем использовать CLI, убедитесь, что ваш узел работает в терминале.
Вариант 2: gRPC
gRPC — это высокопроизводительная универсальная платформа RPC с открытым исходным кодом, которая обеспечивает эффективную связь между службами. Экосистема Protobuf предоставляет инструменты для генерации клиентского кода из файлов *.proto, что упрощает интеграцию с различными языками программирования.
grpcurl : инструмент командной строки для взаимодействия со службами gRPC, аналогичный Curl, но для gRPC. Это полезно для отладки и тестирования. Программно: вы также можете взаимодействовать с узлом программно, используя Go, Python или TypeScript. Это предполагает создание соединения gRPC и использование сгенерированного клиентского кода для запроса сервера gRPC. Вариант 3: ОТДЫХ
Все службы gRPC доступны через запросы на основе REST через шлюз gRPC, что предлагает удобную альтернативу для тех, кто не использует gRPC. Пути URL-адресов основаны на полном имени метода службы Protobuf с некоторыми настройками для идиоматических URL-адресов.
Веб-сайт | Telegram | Discord | Блог | Twitter | Youtube | Facebook | LinkedIn | Reddit | Instagram | Рассылка Orbit