写点什么

阿凡达(Avata)泰山众筹系统开发部署技术

  • 2023-02-22
    广东
  • 本文字数:956 字

    阅读完需:约 3 分钟

阿凡达(Avata)泰山众筹系统开发部署技术

智能合约是代码(它的功能)和数据(它的状态)的集合,存在于以太坊区块链的特定地址。智能合约账户能够在彼此之间传递信息,进行图灵完备的运算。智能合约依靠被称作以太坊虚拟机(EVM)字节代码(以太坊特有的二进制格式)上的区块链运行。阿凡达泰山众筹系统开发询阿李:132 薇 4z77 电 z558,阿凡达泰山众筹开发搭建技术。

  智能合约使用诸如 Solidity 等高级语言写成,然后编译成字节代码上传到区块链上。

  智能合约开发流程大概有以下步骤:

  编写智能合约(如基于 solidity)

  测试智能合约,在测试网络或者私有链进行合约的功能测试

  编译和发布合约,将合约部署到链上

  操作合约,利用诸如 web3.js 等接口,通过访问智能合约的地址,来调用和操作智能合约。

  结构示意图:


  Solidity

  Solidity 是一种语法类似 JavaScript 的高级语言。它被设计成以编译的方式生成以太坊虚拟机代码。

  代码片段:

  pragma solidity^0.4.22;

  contract helloWorld{

  function renderHelloWorld()public pure returns(string){

  return'helloWorld';

  }

  }

  ERC-20

  最著名的智能合约,想必大家都听过,那就是 ERC20。ERC-20 是一种代币的标准协议,简单地说,任何 ERC-20 代币都能立即兼容以太坊钱包(几乎所有支持以太币的钱包,包括 MIST、imToken 等),由于交易所已经知道这些代币是如何操作的,它们可以很容易地整合这些代币。这就意味着,在很多情况下,这些代币都是可以立即进行交易的。

  一个基于 ERC-20 的代币包含以下接口:

  contract ERC20Interface{

  function totalSupply()public constant returns(uint);

  function balanceOf(address tokenOwner)public constant returns(uint balance);

  function allowance(address tokenOwner,address spender)public constant returns(uint remaining);

  function transfer(address to,uint tokens)public returns(bool success);

  function approve(address spender,uint tokens)public returns(bool success);

  function transferFrom(address from,address to,uint tokens)public returns(bool success);

  event Transfer(address indexed from,address indexed to,uint tokens);

  event Approval(address indexed tokenOwner,address indexed spender,uint tokens);

  }

用户头像

技术开发咖 2020-10-28 加入

区块链开发技术观察员

评论

发布
暂无评论
阿凡达(Avata)泰山众筹系统开发部署技术_智能合约_薇電13242772558_InfoQ写作社区