开发以太坊Dapp教程


本教程适用于以太坊开发人员或区块链顾问,他们正在寻找使用Metamask和Truffle 2.0框架开发Ethereum Dapp的指南。

以太坊Dapp概述

简单来说,以太坊dapp是一个分散的Web应用程序,可以利用以太坊网络。Ethereum dapps在以下两个重要方面与普通Web应用程序不同:

  1. 以太坊Dapp与以太网网络而不是服务器进行交互。
  2. 必须通过增强的Web浏览器浏览以太坊Dapps,因为标准浏览器不提供对以太坊网络的访问。

但是,以太坊提供了一个名为Web3的Javascript API来访问以太坊网络。Mist和Metmask是Web3的两个兼容浏览器。虽然,Metamask只是谷歌Chrome扩展。

现在,请注意这里假设熟悉Node.js和Web开发经验。对于我们的以太坊应用程序开发,我们将使用以下三个工具:

  • Truffle
  • TestRPC
  • Metamask

如何发展以太坊

在我们开始之前,让我们首先了解一下我们将用于开发第一个dapp的工具的基础知识。

Truffle: Truffle是以太坊的开发环境,资产管道和测试框架。它帮助以太坊开发人员在区块链上部署合同,用新的合同替换旧合同,并将前端挂钩到已部署的合同。

简单来说,它提供了有用的功能,例如合同部署管理,与合同交互的概念,以及测试对合同的支持。

TestRPC: TestRPC是一个基于Node.js的以太坊客户端,用于开发和测试。它在本地运行100%并提供假的以太坊客户端(但速度更快),使其成为开发和测试的理想选择。

虽然这对生产没用,但对开发非常有用。您可以将合同部署到TestRPC并与它们进行交互,就像它们部署在以太坊上一样。

Metamask:如前所述,Metamask是谷歌Chrome扩展和以太坊轻客户端,允许用户与区块链进行交互,而无需下载整个区块链。

简而言之,Metamask允许用户在Chrome浏览器中与Dapps进行交互。它就像一个魅力,我们建议使用Metamask

让我们开始吧!

我们需要安装我们的工具。假设您是第一次开发Ethereum dapp,首先我们需要安装npm(Node Package Manager)。一旦安装了npm,我们就可以安装Truffle和TestRPC。

要安装npm,您可以从此处找到有关如何安装它的说明。

步骤:#1 - 安装TestRPC

要开发以太坊,首先我们需要安装TestRPC。最简单的入门方法是全局安装。使用以下命令进行安装:

npm install -g ethereumjs-testrpc

现在请注意,TestRPC需要节点版本6.9.1或更高版本。但是,您可以使用nvm轻松地在节点版本之间切换。

步骤:#2 - 安装松露

Truffle是以太坊最受欢迎的开发框架。而且,获得Truffle的最简单方法是将其安装为全局npm包。使用以下命令安装Truffle:

npm install -g truffle

步骤:#3 - 安装Metamask

你可以在这里找到Metamask Chrome插件。确保您已添加它。

现在我们已经安装了我们的工具,我们可以开始我们的以太坊dapp开发。开发dapp的第一步是在后台运行TestRPC。

步骤:#4 - 运行TestRPC

要运行TestRPC,只需运行以下命令:

$ testrpc

此命令将启动客户端,并将生成将由ether预先资助的帐户列表,以及与每个帐户关联的私钥。

步骤:#5 - 设置我们的第一块Truffle Dapp

现在已经建立了开发环境,我们已经准备好创建和部署我们的第一个以太坊

在这个以太坊Dapp教程中,我们将从最基本的开始,并生成一个基本的松露dapp。Truffle中的默认示例应用程序是一个简单的示例货币。

要开始,请运行以下命令。

mkdir MyEthereumDapp 为您的ethereum dapp创建一个文件夹

cd MyEthereumDapp 移动到该文件夹

truffle init 它将初始化该文件夹中的默认示例货币项目

truffle migrate 它有助于构建,编译和部署以太坊dapp

truffle serve 它将在端口8080上托管您的Web界面

完成!

您可以在浏览器中的http:// localhost:8080进行检查

现在轮到你了。

尝试实施您的以太坊dapp想法。

我们正在尝试将Metamask和Truffle工具用于以太网区块链上的Dapps。我们也正在开发Truffle的新版本,我们很快将使用Trffle 3.0更新本教程。

本文链接地址:https://www.wwsww.cn/ytf/1029.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。