Hello Libra

开始使用Facebook的Libra语言编程

img

Facebook推出了一个全新的全球化的加密货币和编程环境,叫做Libra。在Libra作用下,我们可以零费用手续费购买东西或者汇款。

Facebook也给了我们一些代码,所以让我们试一试。 我们将深入研究技术部分。

Libra 是一种货币,而Move是Libra的编程语言。移动端Move是基于Rust编写的。

为什么Move要基于Rust?我猜是Rust已经被证明是一种设计精良,功能强大,快速,安全且有趣的语言。

Move是一种新的编程语言,用于在Libra Blockchain上实现自定义事务逻辑和“智能合约”。 由于Libra的目标是每天为数十亿人提供服务,因此Move的设计以安全性和安全性为最高优先级。

img

https://github.com/libra/libra

幸运的是,我们不用了解Rust也可以开始使用Move。以下是我们开始使用Libra语言编程所需要的。

前提条件:

  • 您运行的是Linux(基于Red Hat或Debian)或macOS系统。
  • 您可以稳定地连接到互联网。
  • git已安装在您的系统上。
  • Homebrew安装在macOS系统上。
  • yumapt-get安装在Linux系统上。

Clone the Libra Core Repository

1
git clone https://github.com/libra/libra.git

Setup Libra Core

安装Libra核心库, 进入 libra 目录 并执行脚本文件下载相关以来,如夏图:

1
2
cd libra
./scripts/dev_setup.sh

这个脚本文件执行以下动作:

  • 下载rustup—— 它是Rust编程语言的一个下载器,是用Libra Core 实现的。
  • 安装所需版本的rust-toolchain
  • 安装CMake - 管理构建过程。
  • 安装protoc - 协议缓冲区的编译器。
  • 安装Go - 用于构建协议缓冲区。

img

Build Libra CLI Client and Connect to the Testnet

要连接到Libra testnet上运行的验证器节点,请运行客户端,如下所示。

1
./scripts/cli/start_cli_testnet.sh

img

客户端连接到testnet上的节点后,您将看到以下输出。 要退出客户端,请使用quit命令。

Check If the CLI Client Is Running on Your System

img

Create Your Wallet Account

img

如果所有步骤的正确,我们应该会得到一个公共地址。

img

#0是我们帐户的索引,十六进制字符串是我们帐户的地址。

Transactions

对于交易,我们需要创建另一个钱包来发送。

img

您不必记住所有这些,请使用account list命令。

img

Adding coins to our wallet

img

  • 0是钱包帐户的索引。
  • 150是要添加到我们钱包的Libra数量。
  • 一个成功的帐户mint命令也将在区块链上创建钱包#0帐户。

Checking the balance

img

我们查询钱包的余额,记住0是我们钱包的索引。

img

Transfer Money

要提交交易以将10个Libra从#0帐户转移到#1帐户,请输入以下命令:

libra% transfer 0 1 10

  • 0是#0帐户的索引。
  • 1是#1帐户的索引。

img

检查balance:

img

Congratulations!

你已经初步学习了Libra,如果你想要进一步学习,请点击这里开始 Start here

The Libra Ecosystem

Libra的生态系统包括几部分:

客户端

Libra 客户端:

  • 是一种能够与Libra Blockchain交互的软件。
  • 可以由最终用户或代表最终用户运行(例如,对于托管客户端)。
  • 允许用户构建,签名并将事务提交给验证程序节点。
  • 可以向Libra Blockchain发出查询(通过验证程序节点),请求事务或帐户的状态,并验证响应。

验证器节点

验证器节点是Libra生态系统中的实体,它们共同决定将哪些事务添加到Libra Blockchain。 验证器使用共识协议,以便它们可以容忍恶意验证器的存在。

验证器节点维护区块链上所有事务的历史记录。 在内部,验证器节点需要保持当前状态以执行事务并计算下一个状态。 我们将在Life of a Transaction中了解有关验证器节点组件的更多信息。

开发者

Libra生态系统支持各种各样的开发人员,从贡献Libra Core的人到构建使用区块链的应用程序的人。 术语“开发者”包括所有这些组。 开发人员可能:

  • 建立Libra 客户端。
  • 构建应用程序以与Libra客户端进行交互。
  • 编写智能合约以在区块链上执行。
  • 为Libra Blockchain软件做出贡献。

翻译自:https://levelup.gitconnected.com/getting-started-with-the-facebook-libra-programming-language-a1d21aa837e0

坚持原创技术分享,您的支持将鼓励我继续创作!