【问题标题】:Ethereum DAPP - understanding以太坊DAPP——了解
【发布时间】:2019-03-21 05:34:50
【问题描述】:

我开始了解如何在Ethereum blockchain 上开发智能合约以及如何编写web-script 用于与智能合约交互(购买、出售、统计......)我得出了要做什么的结论.我想知道我是否正确理解了所有内容。

  1. 我们在http://remix.ethereum.org写合约,检查是否 所有功能都正常工作。
  2. 我们正在筹集TRUFFLE + GANACHE 以自行测试合同 私有区块链。
  3. 我们写一个简单的front-end来与合约交互,我们将 通过 Metamask 做所有事情。
  4. 将所有内容部署到Ropsten Ethereum test network 并进行测试 一切都在那里。
  5. 在测试网测试成功后,我们填写所有内容 进入以太坊的主区块链。

我是否正确理解了所有内容,是否采取了正确的步骤?

【问题讨论】:

    标签: ethereum


    【解决方案1】:

    您概述的步骤看起来不错。我实际上想说的是,您不需要执行第一步,因为您可以在开发过程的所有步骤中使用 truffle。

    1. 创建一个新的 Truffle 项目 (truffle init) 并编写智能合约和迁移脚本。
    2. 使用 JavaScript(和/或 Solidity)编写完整的单元测试,并在本地 Ganache 实例 (truffle test) 上运行这些测试。我的库truffle-assertions 可用于协助编写这些单元测试。
    3. 为使用 Truffle 生成的人工制品(truffle compiletruffle migrate)的合约编写一个前端。可以使用 Metamask 在浏览器中手动测试此前端。
    4. truffle.js 文件中添加连接配置,通过truffle-hdwallet-provider 和 Infura 连接以太坊测试网(Rinkeby、Kovan、Ropsten)和主网,从而可以将合约部署到这些网络。 Further explanation.
    5. 部署到选择的测试网 (truffle migrate --network ropsten) 并按照步骤 3 进行更多测试。
    6. 在您对多个开发步骤中的所有功能进行全面测试后,部署到主网 (truffle migrate --network mainnet)。

    当然,这些步骤中的大部分在没有 Truffle 的情况下仍然可以完成,但是 Truffle 确实简化了大部分过程,并且有很多可用的文档/资源。

    【讨论】: