Injective 技术简介

Injective 技术简介
Injective 技术简介
     

加入 Injective 从未如此简单。无论您是后端或前端开发者、智能合约工程师还是节点运营商,Injective 都能为所有人提供无与伦比的体验。本指南介绍了如何基于 Injective 进行构建,以及您可以更深入地了解您最感兴趣的主题的链接和参考。

Injective 独特地提供了一组强大的 Web3 财务模块,极大地简化了开发体验。这包括链上订单簿模块,任何 dApp 都可以利用该模块来立即获得链上的机构级流动性。开发人员可以无缝地即插即用模块,以快速迭代新应用程序,这在任何其他需要从头开始进行应用程序开发的 L1 上是不可能的。

这里的指南提供了开发概述,并重点介绍了一些模块,例如交换模块,这些模块可用于从第一天起就创建具有无与伦比的流动性的突破性应用程序。

1. 智能合约开发和安装介绍

Injective 区块链上的智能合约代表了下一代高度互操作的框架。

Injective 的 WebAssembly(WASM)智能合约层提供了广泛的金融原语,例如共享链上流动性、预言机喂价、跨链桥接和独特的执行功能,从而支持开发复杂的去中心化应用程序 (dApp)。

Injective 的一个独特功能是它支持自动执行的智能合约,这是一种新颖的原语,可以扩展应用程序设计的可能性,并允许创建完全去中心化、无需许可的应用程序。 Injective还旨在促进区块链互操作性,实现无缝集成和跨链通信,从而为同时利用多个区块链网络优势的创新产品和服务开辟新的可能性。 Injective 对区块链互操作性的承诺,以及其复杂的智能合约平台和金融基础设施原语,使其成为开发更加开放、公平和去中心化的金融体系的主导力量。

要开始开发 Wasm 原生智能合约,必须首先安装注入。 jectived 是连接到 Injective 的命令行界面 (CLI) 和守护程序,允许开发人员与其交互。它对于 Injective 上的节点/验证器操作、程序化帐户创建、资金帐户和智能合约启动至关重要。该文档提供了使用 Docker 映像安装注入的说明,这简化了开发人员的设置过程。但是,如果您不想使用 Docker,则可以从二进制文件注入安装并按照提供的安装说明进行操作。该文档还包括通过为每个注入指定正确的 --node 标志来将注入与注入主网和测试网一起使用的提示。

上面的链接文档还涵盖了在 Injective 上创建智能合约并与之交互的基础知识,包括基本智能合约的结构以及如何通过注入进行部署。它提供了基于 Wasm 的智能合约示例,包括将计数器增加并重置为给定值的计数器合约。学习 CosmWasm 开发的其他重要资源包括 CosmWasm AcademyArea-52,这是两个很棒的在线免费课程。

2. 前端开发和 Injective TypeScript SDK 入门

Injective 的前端开发涉及创建与区块链交互的用户界面,允许用户执行各种操作,例如管理资产、在 Injective dApp 上创建无需许可的市场、从区块链查询数据等等。 Injective TypeScript SDK(injective-ts 模块)提供了一组工具和库,可以简化构建这些接口的过程。开始使用 Injective TypeScript SDK 的最佳资源是文档。在这里,您将找到在 Injective 上成功开发第一个 dApp 所需的一切。

需要突出显示的两个链接是 injective-ts-examples GitHub 库,用于查看基本示例,例如如何在 Injective 上发送交易和查询数据。第二个部分是「Building  dApp」部分,学习如何从头开始构建 DEX 等应用程序,以及创建智能合约并通过 injective-ts 模块与其进行交互。

3. API 交易和 Injective Python SDK 入门

基于 Injective 构建的跨 dApp 的 API 交易涉及以编程方式执行交易、管理订单以及通过 Injective API 访问市场数据。 Injective Python SDK 提供了一种与 Injective API 交互的便捷方式,允许开发人员构建交易机器人、自动化交易策略并将 Injective 的功能集成到他们的应用程序中。

Injective 的架构旨在促进任意现货和衍生品市场的创建和交易,通过 Injective 交易模块整合链上限价订单簿管理、交易执行、订单匹配和交易结算。这种全面的方法确保了无缝的交易体验,从下单到结算,全部在链上管理。

交易流程的核心有两项主要服务:

The Chain API:主要为写操作而设计,Chain API直接从节点查询区块链状态,提供对区块链当前状态的即时和直接访问。这包括一组有限的读取数据的 API 请求,重点关注区块链的即时和当前状态。

The Indexer API:Indexer API 专门用于只读操作,它根据链发出的事件重建区块链状态,提供网络状态的全面视图,而无需直接访问区块链。提供额外的功能,例如更广泛的方法、流支持、gRPC 集成以及获取历史数据的能力,使其成为比 Chain API 更通用的数据检索工具。

交易生命周期从交易者签署包含订单消息的交易开始。然后,这些交易被广播到一个 Injective 节点,在那里它们被添加到内存池中并最终包含在一个块中。在块处理期间,执行每种消息类型的处理程序。立即处理应用于订单取消和清算消息,而订单创建消息则排队等待稍后处理。

在区块结束时,订单匹配的批量拍卖过程开始。市价订单根据剩余订单簿执行,限价订单与剩余订单簿相互匹配,从而产生未交叉的订单簿。然后,该链相应地结算资金,为衍生品交易创建头寸,并将资产交换为现货交易。包含交易和结算信息的事件由链发出,然后由 Injective Exchange API 后端索引并推送给所有订阅的交易者。

您可以在此处找到完整的 SDK 文档以及其他指南和示例。

4. Injective 运行节点简介

对于希望参与网络运营的开发人员和验证者来说,在 Injective 上运行节点是关键的一步。与 Injective 节点交互的方式有多种,包括通过命令行界面 (CLI) 以及 gRPC 和 REST 端点。每种方法都具有独特的优势,具体取决于您的具体需求和技术堆栈。

选项 1:CLI

Injective CLI 是与节点交互的强大工具。使用 CLI 之前,请确保您的节点正在终端中运行。

选项 2:gRPC

gRPC 是一个高性能、开源的通用 RPC 框架,可实现服务之间的高效通信。 Protobuf 生态系统提供了从 *.proto 文件生成客户端代码的工具,便于与各种编程语言轻松集成。

  • grpcurl:与 gRPC 服务交互的命令行工具,类似于curl,但用于 gRPC。它对于调试和测试很有用。
  • Programmatically:您还可以使用 Go、Python 或 TypeScript 以编程方式与节点交互。这涉及创建 gRPC 连接并使用生成的客户端代码查询 gRPC 服务器。

选择 3:REST

所有 gRPC 服务都可以通过 gRPC 网关通过基于 REST 的查询进行访问,为那些不使用 gRPC 的用户提供了便捷的替代方案。 URL 路径基于 Protobuf 服务方法的完全限定名称,并对惯用 URL 进行了一些自定义。

4. 开发者资源

当您开始您的开发之旅时,请随时参考此列表,获取用于在 Injective 上进行开发的资源的完整列表。

关于 Injective

Injective 是一个可互操作的 Layer-1 区块链,为开发者提供了创建主流应用所需的开箱即用模块,可用于构建强大的 DeFi 和 Web3 应用。INJ 是 Injective 的原生资产,为 Injective 区块链及其快速发展的生态提供动力。Injective 由 Binance 孵化,并得到 Pantera Capital 和 Jump Crypto 的支持。

Website | Telegram | Discord | Blog | Twitter | Youtube | Facebook | LinkedIn | Reddit | Instagram | Orbit Newsletter