GTokenTool全网最好的代币发行工具平台
当前位置:首页 >> solana教程 >> Solana 编程 – Solana 开发终极指南

Solana 编程 – Solana 开发终极指南

admin solana教程 162

Solana 是什么?

Anatoly Yakovenko 和 Raj Gokal 于 2017 年推出了 Solana。这两位开发人员仍然积极参与 Solana Labs,该公司是 Solana 背后的公司。Yakovenko 是 Solana Labs 的现任首席执行官,Gokal 是其首席运营官。然而,这并不能告诉我们太多关于 Solana 的信息——简而言之,Solana 是什么

Solana 是一个公共开源可编程区块链,这意味着它支持智能合约。然而,在 Solana 中,后者被称为“程序”,尽管它们起着与智能合约相同的作用。因此,Solana 程序是 Solana 编程的关键。此外,正如介绍中提到的,与以太坊一样,Solana 支持可替代和不可替代代币的开发。当然,它也是一个开发者可以在其上部署各种 dapp 的网络。此外,Solana 的原生货币或代币称为“SOL”。这种原生货币用于通过 Solana 的混合 DeFi 质押共识提供网络安全,支付交易费用,并在该链上转移价值。

此外,尽管 Solana 采用混合共识机制,但它仍属于权益证明 (PoS) 链类别。Solana 的 PoS 协议(其中质押的 SOL 进行“挖矿”)确保 Solana 区块链在所有节点上维护准确的信息。此外,Solana 的理论吞吐量高达每秒 65,000 笔交易。除了速度快之外,Solana 的交易费用还不到一美分。相比之下,以太坊的 gas 费用通常高达数百美元。因此,这两个因素使 Solana 在用户和开发者中都很受欢迎。然而,我们必须提到,Solana 存在问题,许多怀疑论者继续怀疑其去中心化程度。

如何进行 Solana 编程

掌握了 Solana 基础知识后,我们可以专注于如何进行 Solana 编程。在这里,我们必须提醒您,Solana 编程有多种类型。例如,创建Solana 代币、创建 Solana dapp 和创建 Solana 程序(智能合约等价物)。有时,这些编程之间的界限可能非常模糊。而且,虽然创建 Solana 程序被认为是 Solana 编程的核心,但您可以使用链上数据和 Solana 钱包(例如 Phantom)创建许多 Solana dapp,而无需编写 Solana 程序。此外,即使程序是代币铸造的幕后推手,您实际上也可以创建 SPL 代币而无需编写自己的 Solana 程序。因此,这完全取决于您的目标和偏好。

开始使用 Solana 编程的最常见方法是访问 Solana 的“开发人员资源”页面。在那里,您可以浏览他们的文档并了解 Solana 开发工作流程、程序、dapp 和客户端 SDK。此外,这里还可以访问 Solana Cookbook、SolDev 和核心 Metaplex 文档。因此,我们强烈建议您探索这些宝贵的资源。但是,进行 Solana 编程的最简单方法是通过 Moralis。而且,我们将向您展示如何使用此 Firebase for crypto 获取 Solana 的 API。但首先,让我们仔细看看 Solana 编程语言选项。 

Solana 使用什么编程语言?

如果我们必须选择Solana 编程语言,最明显的选择是 Rust。但是,C 和 C++ 也可用于在 Solana 上部署程序。因此,如果您的目标是成为一名核心 Solana 开发人员,即精通此链上的智能合约开发的人,那么 Rust 绝对是先决条件。但是,正如您之前所了解的那样,有一些工具可以让您专注于前端并仍然创建杀手级 dapp。因此,当您使用 Moralis 时,您的 JavaScript 技能足以满足您的 Solana 编程需求。因此,我们将仔细研究如何获取 Moralis 的 Solana API。但是,对于那些想要了解有关核心 Solana 编程语言的更多信息的人,请务必查看以下部分!

核心 Solana 编程语言 – Rust

Rust 是由 Graydon Hoare 于 2010 年创建的。因此,Rust 比 Solana 早存在了好几年,不像 Solidity 是专门为以太坊设计的。这一事实为已经精通 Rust 的开发人员带来了一定的优势。此外,Rust 是一种开源编程语言。它性能高、静态类型,并且内存效率高。对于对可靠性和安全性感兴趣的开发人员来说,Rust 是一个不错的选择。此外,Rust 还使控制内存等低级细节变得非常容易。此外,得益于 Rust 的类型系统和所有权模型,开发人员可以在编译时消除几类错误。 

Rust 的另一个优点是它没有运行时或垃圾收集器。因此,它可以轻松支持性能关键型计算并在嵌入式设备上运行。此外,Rust 与其他流行编程语言的集成非常容易。尽管如此,据开发人员称,核心 Solana 编程语言非常直观且用途广泛,在 Solana 上创建程序只是其应用之一。 

获取 Solana 编程的 API

Moralis 的Solana API是开始 Solana 编程的最简单方法。借助这个快速而强大的 API,您可以毫不费力地从 Solana 区块链查询数据。本质上,Solana API 是一个非常强大的 REST API。此外,它使您能够获取用户代币余额、NFT 元数据等等。此外,与 REST API 一样,您可以默认使用任何编程语言调用 Solana API。因此,您可以轻松地在多个应用程序和平台上获取 Solana 数据 

但是,使用此 API 的最简单方法是使用 Moralis 的 SDK 调用它。这样,只需要几行代码。此外,“Moralis.SolanaAPI”命名空间是所有这些强大功能所在的位置。此外,“Moralis.start()”会自动加载“Moralis.SolanaAPI”模块。此外,为了更加方便,上述命名空间分为两类——“SolanaAPI.account”和“SolanaAPI.nft”。而且,由于 Solana NFT 继续风靡一时,让我们仔细看看 Solana NFT API。 

Solana NFT 编程

到目前为止,您知道 Solana 与 EVM 不兼容。因此,它有自己的代币标准,称为 SPL。这就是 Moralis 为您提供“getNFTMetadata”来获取 SPL NFT 元数据的地方。此外,这个钩子有两个选项:“网络”和“地址”。

“network” 选项可让您在 Solana 的主网和开发网之间进行选择。不过,主网是默认值。另一方面,“address” 选项接受 SPL NFT 地址。为了进一步阐明“getNFTMetadata”的用法,让我们看一下获取给定 SPL NFT 地址的开发网元数据的示例代码:

const选项 = {
 网络:“devnet”
 地址:“6XU36wCxWobLx5Rtsb58kmgAJKVYmMVqy4SHXxENAyAe”
}
const nftMetadata =等待Moralis。SolanaAPI。nft。getNFTMetadata 选项

以下是上述代码行的运行结果:

{
 “薄荷” “字符串”
 “标准” “字符串”
 “名称” “字符串”
 “符号” “字符串”
 “元复合体” {
   “metadataUri” “字符串”
   “masterEdition” true
   “isMutable” true
   “primarySaleHappened” : true
   “卖家费用基础点数” : 0 ,
   “更新权限” “字符串”
 }
}

一旦您可以访问上述详细信息,您就可以围绕它构建各种 dapp。此外,除了 NFT 的元数据之外,您还可以使用“getNFTs”返回特定地址的 SPL NFT。此方法还接受网络类型(主网或开发网)和地址。此外,还有其他几个 Moralis Solana API 挂钩可供您使用,包括“balance”、“getSPL”和“getPortfolio”。有关这些挂钩的更多详细信息,请访问 Moralis 文档。 

使用 Moralis 进行 Solana 编程练习

根据我们的经验,亲自动手学习编程非常有效。因此,我们鼓励您撸起袖子,解决我们的一些 Solana 编程示例项目。例如,您可以学习如何使用Metaplex 铸造 Solana NFT。这个示例项目将教您如何单独铸造每个 Solana NFT 或如何在没有任何 Rust 编程的情况下批量铸造。 

此外,我们还建议您探索如何获取 Solana NFT 元数据。在这里,您将能够使用上面介绍的“getNFTMetadata”钩子。此外,在这里,您还将学习如何构建一个简洁的 Web3 UI,以用户友好且引人注目的方式呈现 Solana NFT。 

最后但并非最不重要的一点是,我们还鼓励您创建 Solana 代币;只需 5 个简单的步骤。此外,您还可以为您的代币提供一个家并构建Solana 代币仪表板。这些教程中的任何一个都将使您更接近成为 Solana 开发人员。因此,请随意选择并开始构建。但是,我们强烈建议您完成所有这些。在此过程中,您将建立信心,然后准备好处理自己的项目。     

作者:GTokenTool一键发币平台

交流群:https://t.me/+Kz4u3xoDpFo3ZWY1

同类推荐