📜  搭建智能合约开发环境

📅  最后修改于: 2022-05-13 01:55:39.516000             🧑  作者: Mango

搭建智能合约开发环境

开发环境是一种环境,其中所有资源和工具都可用于开发程序或软件产品。在这里,尝试创建一个开发环境,该环境是用于开发智能合约的流程和工具的集合。

设置开发智能合约的环境主要有两种选择:

  1. 在线 IDE:这是一个快速、简单且对初学者友好的在线 IDE,用于开发智能合约。当我们深入开发智能合约时,由于其局限性,不建议使用在线 IDE 设置。
  2. 本地设置:所有工具和软件包都安装在用于构建智能合约的本地机器上。

本文重点讨论如何设置本地开发环境来执行智能合约。

智能合约

智能合约是以程序形式构建的商业合约,部署在区块链网络上,程序执行所需的计算由区块链网络提供。智能合约的目标是减少对可信中间人的需求、仲裁和执行成本、欺诈损失,以及减少恶意和意外异常。

本地环境设置所需的工具:

为智能合约设置本地环境需要以下工具:

  • NodeJS 它是一个免费的、开源的服务器环境,通过在服务器上使用 JavaScript 在各种平台上运行。
  • Truffle Suite:它是一流的开发环境、测试框架和使用以太坊虚拟机 (EVM) 的区块链资产管道,旨在让开发人员的生活更轻松。
  • Ganache:它是一个以太坊开发工具,是 Truffle Suite 的一部分,在寻找以太坊 dapps 测试工具时,它是满足开发人员要求的最佳工具。
  • Visual Studio Code:它是 Microsoft 提供的最强大的 IDE,具有多种开发选项。

按照以下步骤安装所需的工具

安装 NodeJS:

Node.js是一个免费的开源服务器环境,可在各种平台(Windows、Linux、Mac OS 等)上运行,并在服务器上使用 javascript。作为异步事件驱动的 javascript 运行时,Node.js 旨在构建可扩展的网络应用程序。

  1. 单击链接 Node.js。
  2. 选择安装程序的类型,Windows 或 macOS。
  3. 安装在系统上下载的文件。
  4. 通过在命令提示符下执行“ node -v ”和“ npm -v ”来验证安装。

安装 Nodejs

在系统上安装 Node.js 时,还会安装npm(Node 包管理器) ,用于使用命令提示符安装各种包。我们可以

安装松露套件:

Truffle Suite是使用以太坊虚拟机 (EVM) 的世界级区块链开发环境、测试框架和资产管道,旨在让开发人员的生活更轻松。

要安装 TRUFLLE SUITE,我们在命令提示符下使用 npm 命令 -

安装松露

安装 Ganache(单节点本地以太坊网络):

  • 下载 Ganache 设置。
  • 安装设置并在快速启动模式下运行 Ganache,将出现以下屏幕。

安装甘纳许

  • 上面的屏幕截图显示了一些余额为 100 以太币的账户。已经由 Ganache 创建,为了自定义运行 ganache 测试以太坊节点,请单击 ganache 工具右上角的齿轮图标,应该可以看到以下屏幕。

自定义 ganache 测试

  • 端口和网络id可以自定义,自定义后请点击左上角重启按钮。
  • 这将重新初始化节点并且 RPC 位置将是http://[host-name]:[port] 。在上面屏幕中看到的设置的情况下,RPC 端点将是 http://127.0.0.1:7545。
  • Ganache 安装正在运行,并且可以使用上述 RPC 端点进行交互。

安装 Visual Studio 代码:

Visual Studio Code 一直是微软为 Solidity 智能合约开发提供的最佳 IDE 之一。 Visual Studio 代码可以从这里下载。

安装 Solidity:

Solidity 是一种面向对象的高级语言,用于实现智能合约。智能合约是管理以太坊状态内账户行为的程序。 Solidity 是静态类型的,支持继承、库和复杂的用户定义类型以及其他功能。使用 Solidity,您可以创建用于投票、众筹、盲拍和多重签名钱包等用途的合约。部署合约时,您应该使用最新发布的 Solidity 版本。

  • 安装 VS 代码后,从扩展部分安装 Solidity 扩展。

安装 Solidity

  • 在您的 VS 代码上安装solidity 扩展后,您就可以构建您的第一个智能合约了。

构建第一个智能合约:

第 1 步:在 VS 代码中打开命令提示符终端并输入 command-

mkdir 和 cd 命令

第二步:通过执行命令生成智能合约的模板——

松露初始化

第 3 步:现在,通过执行命令创建 HelloWorld.sol 文件 -

松露创建合约命令

第 4 步:现在将以下代码复制或键入到您的代码编辑器中。

Solidity
// Solidity program to create 
// Hello World program
pragma solidity >=0.4.22 <0.9.0;
  
contract HelloWorld 
{
  string message;
  constructor() public 
  {
    message = "Hello World!";
  }
  
  function SayHello() view public returns (string memory) 
  {
    return message;
  }
}


第5步:输入以上代码后执行命令-

该命令将编译你的solidity程序并创建一个名为“build”的新文件夹,并将显示以下输出 -

输出