区块链开发

区块链DAPP开发实战

作者:admin 2019-05-13 我要评论

从现在的情形来看打造完全去中心化的App至少还需要几年时间。区块链dapp开发能否打败APP还是一个未知数,但DApp的发...

目前,有关区块链相关技术和方向持续升温,但是,基于区块链技术的DAPP(去中心化应用)尚处于早期探索状态,还没有大规模实际应用价值的DAPP出现。但不可否认的是区块链技术带给了我们巨大的想象空间,从现在的情形来看打造完全去中心化的App至少还需要几年时间。区块链dapp开发能否打败APP还是一个未知数,但DApp的发展是个必然趋势。所以我们要紧跟时代的步伐,勇敢的去探索新技术新方向,成为下一个时代的先驱者。
 
 
区块链dapp开发
 
打开Atom,File-Setting-Install 搜索要安装的插件名,如果网络好的话可下载,不过因为某种原因,我们是下不了这个插件的,所以采用从git上下载源码安装的方式。
 
打开windows PowerShell,cd C:\Users\liuqikang\.atom\packages到目标目录下,输入指令apm install language-ethereum(language-ethereum是解压后的文件夹名),也可以到解压后文件夹下通过npm install安装,安装成功后再次回到Atom中Setting搜索插件会显示已安装。
 
官方提示说我们这个工程不是一个完整的dapp工程,我们需要依赖于OpenZepplin第三方库自己补全这个工程,点开Open Zeepelin的链接,从第三部开始(前两部我们已经做过了),在当前工程目录下安装open zeppelin。安装成功后,继续按照open zeppelin教程,在Atom的contracts文件夹下创建一个合约TutorialToken.sol,并填入初始内容。
 
第一行为指定了当前solidity所用的版本,第二行为solidity导入外部合约,第三行为当前合约继承了导入的外部合约,contract代表这是一个合约。我们来看一下StandardToken这个文件,进入
node_modules/openzeppelin-solidity/contracts/token/ERC20/StandardToken.sol,ERC20通用代币标准,感兴趣的同学可以自己了解下,相关的还有ERC721(以太猫)。
 
这个balances代表定义的“账户→余额”信息,Mapping相当于“键→值”数据。mapping(address =>uint256),address为solidity语法中的用户地址,uint256为当前这个address(用户)所拥的余额。totalSupply_代表代币总数。继续按照open zeppelin教程,在合约TutorialToken中添加四个变量:
 
•Name为当前代币的名称
•Symbol为当前代币的单位
•Decimals为代币的小数位数
•INITIAL_SUPPLY为发行的代币数量
 
Truffle调用了我们刚才创建的合约部署文件2_initial_contracts.js部署了合约TutorialToken,部署的合约地址为0x345ca3e014aaf5dca488057592ee47305d9b3e10,到此我们的代币和智能合约已经编译并部署成功了。注意:我们进行编译和部署的这个PowerShell不能关闭,因为后续启动需要。让我们来启动下这个节点,让我们重新再打开一个PowerShell,依次执行。启动成功后,浏览器会自动弹出当前web工程的网页。如果显示有问题,请查看外网JS源是否已经切换(上一小节最后)。

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 供应链融资频爆雷 支付宝用区

    供应链融资频爆雷 支付宝用区

  • 找人做区块链开发需要注意哪

    找人做区块链开发需要注意哪

  • 开发区块链应用有哪些用途

    开发区块链应用有哪些用途

  • 开发区块链安卓应用程序必备

    开发区块链安卓应用程序必备