发布于 2026-01-06 3 阅读
0

使用 Stellar 构建更佳智能合约挑战:配套指南 @create-soroban-dapp

利用 Stellar 构建更美好的智能合约:挑战指南

@create-soroban-dapp

对我们的 web3 挑战感兴趣,但不知道从何入手?在这篇文章中,我们将概述 web3 和区块链技术,并为您提供学习 Stellar 和 Soroban 智能合约平台所需的所有信息。

Web3 快速入门

什么是web3和区块链?

区块链为世界各地的人们提供了一种无需依赖中央机构即可共同维护数据库的方式。它是一种信息共享和协调模型,专为我们互联互通的全球未来而设计。阅读区块链基础知识

加密货币与此有何关系?

区块链是加密货币的核心技术,它在网络中的所有计算机上进行复制。新数据通过加密方法添加到这条链上,即使是对先前交易的最小改动也能被轻松检测到。每次添加新的数据块时,整个网络都会有效地验证所有先前数据的完整性。这个过程被称为达成共识。

为什么人们对加密货币/区块链持怀疑态度?

加密货币和区块链技术的批评者通常提出以下三个主要论点:

  1. 加密货币和区块链缺乏实际应用。
  2. 对于类似功能,传统技术的性能优于区块链。
  3. 该行业面临着巨大的监管不确定性。

通过参与 Stellar 生态系统和本次黑客马拉松,我们旨在挑战至少前两点。我们的目标是证明您可以:

  1. 为创新的去中心化金融解决方案做出贡献。
  2. 帮助数十亿人获得金融服务。

尽管监管的不确定性仍然令人担忧,但重要的是要记住,大多数新兴技术都面临着监管方面的不确定性,我们鼓励开发者以负责任的态度探索这些技术。我们希望以合规的方式连接传统金融和去中心化金融。

什么是智能合约?

智能合约是存储在区块链上的程序,当预设条件满足时会自动运行。然而,仅仅允许开发者向区块链编写代码的平台是不够的。为了创建强大、实用且可持续的产品和服务,还需要额外的功能来确保安全高效的执行。了解智能合约的基础知识

为什么去中心化应用(dApp)如此吸引人?

去中心化应用程序(dApp)是在区块链网络上运行的程序,能够提供直接的点对点服务。这消除了对中心化中介机构的需求,有效地实现了各种流程的去中心化。

去中心化应用(dApp)的一个常见例子是去中心化交易所(DEX)。在DEX上,用户可以通过透明的点对点订单簿直接进行资产交易,无需经纪人或其他中间人。去中心化应用有潜力提升各种应用的效率和透明度,尤其适用于以下场景:

  • 借贷
  • 交换价值

通过去除中间环节,去中心化应用(dApp)可以更直接地提供这些服务,而且通常比传统的中心化系统成本更低。

DeFi术语表

去中心化金融(DeFi):一种利用去中心化网络将传统金融产品转变为无需信任和透明协议的运动。

  • 钱包:用于存储与账户关联的数字资产,例如代币或 NFT。必须在测试网和主网上都充值。点击此处了解更多关于如何将钱包连接到 dApp 的信息

  • 测试网:用于构建和原型设计的区块链沙盒环境。

  • 主网:用于真实资产/交易的生产级区块链环境。

  • 代币:这些是可以在网络上创建或已经存在的资产。它们可以与现实世界的价值挂钩(例如,稳定币与美元等法定货币挂钩),可以代表现实世界中的某种资产,或者可以完全与现实世界中的任何事物无关(例如,模因币)。

  • 质押:质押是指将数字资产投入区块链网络进行生产性使用的过程。在去中心化金融(DeFi)应用中,用户可以“质押”自己的资产,使其能够以各种方式被网络使用。这通常会为资产持有者带来利息收益。

  • 流动性池:流动性池是锁定在智能合约中的资金集合,支持去中心化交易、借贷等功能。用户贡献资产并获得流动性提供者(LP)代币,代表其份额。这些流动性池确保交易者的流动性,减少滑点并提高市场效率。流动性提供者通过交易手续费和来自 DeFi 平台的额外奖励获得收益。

Web3开发概述

Web3 开发引入了创建去中心化应用程序的新范式。本节将介绍 Web3 开发过程的关键方面:

  • 本地开发:本地开发是指使用专门的工具和框架,以便在本地编写、编译和测试智能合约。Stellar 的全新智能合约平台 Soroban 使用 Rust 编写智能合约。对于本地开发,您可以使用 Soroban CLI,它允许您设置本地网络、编译 Rust 合约并进行部署。Stellar SDK 仍然用于与 Stellar 网络交互,并且支持多种语言,包括 JavaScript、Python 等。Stellar Laboratory 等工具仍然可用于测试操作,而 Stellar Core 可用于运行本地网络以进行测试。

  • 应用托管: Stellar 应用通常拥有传统的 Web 前端,可以托管在Vercel 等标准 Web 服务器上。后端通过 Horizo​​n API 与 Stellar 网络交互。Stellar 上的智能合约(称为 Stellar 核心合约)直接部署到 Stellar 网络。用户可以通过兼容 Stellar 的钱包或您使用 Stellar SDK 创建的界面与您的应用进行交互。

  • 计算与存储: Stellar 网络上的计算发生在交易或操作处理过程中。数据存储方面,Stellar 通过账户数据条目提供有限的链上存储空间。对于更大的数据需求,开发者通常使用链下解决方案,并将引用或哈希值存储在 Stellar 区块链上。网络使用费用以 Stellar 的原生货币 Lumens (XLM) 支付。

有关 Stellar 技术栈的更多详细信息,请访问我们的开发文档

学习如何构建去中心化应用(dApps)

通过PaltaLabs构建的示例,学习如何构建 dApp,该示例演示了如何使用简单的问候合约实现全栈 dApp。查看Create Soroban DApp 代码库,获取在 Stellar 网络上开发去中心化应用程序的实用指南:

GitHub 标志 paltalabs /创建-soroban-dapp

ReactJS 中算盘 dApp 的样板代码

@create-soroban-dapp

@create-soroban-dapp它既是一个npx脚本,也是一个样板 dApp,可以启动您任何基于算盘的 DApp 的想法。

很大程度上受到了Scio Labs的ink!athon项目T3 Open Source@create-t3-app的脚本机制的启发。

检查一下LIVE VERSION使用已部署测试网合约的 dApp!

请点击此处阅读文档📚📚

介绍

@create-soroban-dapp它由两个主要部分组成:

  • 一个使用@soroban-react库的样板 dApp
  • 一个npx允许任何开发人员使用命令行快速启动其项目的脚本npx create-soroban-dapp

用法

要创建一个新的 Soroban dApp 项目,只需使用以下命令之一:

npx create-soroban-dapp@latest
Enter fullscreen mode Exit fullscreen mode

或者

npm create soroban-dapp@latest
Enter fullscreen mode Exit fullscreen mode

脚本运行完毕后,进入您新建的项目目录:

cd your-project-name
Enter fullscreen mode Exit fullscreen mode

故障排除

如果npm create脚本出现故障

该脚本尚处于早期阶段,可能无法在所有操作系统和配置上完美运行。如果……

文章来源:https://dev.to/stellar/build-better-with-stellar-smart-contract-challenge-a-companion-guide-2ing