专栏首页子曰五溪使用Node.js开发以太坊ERC 20标准的代币

使用Node.js开发以太坊ERC 20标准的代币

目前众多的山寨币都是基于以太坊开发出来的ERC 20标准代币,这也是为什么我要研究这个的原因,想看明白这些山寨币的潜在价值,从纯技术的角度来说,这些山寨数字货币似乎都没有太大的价值,因为随着以太坊工业级的开发平台形成,个人也可以开发和发行代币的,这篇文章就是要讲一讲如果使用Node.js,我们该怎么搞的问题。所以,从经济的角度来说,山寨数字货币存在极大的风险(发行方几乎0成本),那么现在市场上的溢价又是从哪里而来呢?从发行方想要用这个代币做什么事情而来,ETH生态你可以理解为“阿里巴巴”,众多的山寨数字货币,你可以理解为在“阿里巴巴”这个生态里的众多企业,有人发行了流量币,专门在电商领域里导流量来赚钱,而这个流量币是发行方用来募集资金所用,流量币的价值,在于发行方使用募集来的资金,去做这个导流的事情,这是一种通俗的讲法。

注明:本文不构成投资建议,仅面向前端开发者,去了解如何开发发行个人的数字货币。另外本文的一些基础知识,需要本文的读者自行了解,默认你已经知道区块链基础知识,Node.js开发,网络协议等

目前在Node.js生态里已经出现了“瑞士军刀”级别的开发框架,你可以无视原版Go实现的以太坊网络节点,也不需要了解太多以太坊的原理(当然是Demo级别),你可以通过访问 http://truffleframework.com/docs/getting_started/installation 来了解truffle项目,这个项目非常类似create-react-app或vue-cli(面向前端的开发同学),用它来启动一个ERC项目骨架。

npm install -g truffle mkdir MetaCoin && cd MetaCoin truffle unbox metacoin

(注明:unbox 是去下载某个工程的范例,类似脚手架工程,需要访问外国网站。)

如果你不需要这些脚手架工程,可以使用 truffle init 去重新创建一个新的项目。

接着,你需要选择以太坊网络,目前truffle官网上推荐了多种不同的以太坊客户端,这些客户端主要针对你是选择开发还是部署等等场景,如果是开发的话,可以直接使用truffle develop,也正好与truffle框架配套,不用去做多余的配置。其中,有一行警告,你必须要认真对待:“Do not use this mnemonic on the main Ethereum network (mainnet). If you send ETH to any account generated from this mnemonic, you will lose it all!”,不要向这个网络发送任何ETH就好。

在已经下载好的工程中,主要关注两个目录“contracts”和“migrations”,前者属于合约,后者属于部署脚本,你可以把一些名字换成你自己的,仔细阅读“http://truffleframework.com/docs/getting_started/contracts” 来做配置的更改。

接着你需要创建一个“4_example_migration.js”文件,然后编写:

var MyContract = artifacts.require("MyContract");
module.exports = function(deployer) {
 // deployment steps
 deployer.deploy(MyContract);
};

编译合约和部署合约,这两个操作就是两个命名:truffle compile 和 truffle migrate,过程会有一些时间。

基本上一些其他的开发方式和你开发一个Node.js应用一样,使用npm来管理模块,然后用JavaScript去做一些业务上的开发。truffle的配置文件主要在truffle.js中,一些其他的代码,你可以根据你的业务场景去做一些开发。

现在,你可以编写一些测试代码来测试你的代币发行是否成功(http://truffleframework.com/docs/getting_started/javascript-tests)。

至此,开发阶段就已经结束了,大家已经看见了,基于以太坊智能合约的开发入门非常的简单,但是目前区块链生态里的应用还非常的有限和单薄,目前应用场景最多的就是ico,通过代币来募集资金,进行项目的运作。

最后推荐一个有趣的项目,区块链领域里类似知乎的一个平台,有用的学习资源比较多,现在还可以实名注册,地址: https://zt.bihu.com/?id=39768

本文分享自微信公众号 - 子曰五溪(fed-talk)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-01-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 编写你的第一个 StatefulWidget

    前面一篇文章描写了一个打印hello的StatelessWidget的封装,接下来我们应该了解该如何封装一个简单的StatefulWidget,来驱动一次交互,...

    icepy
  • Go 如何调试你的应用程序

    任何一门语言,调试器对于开发来说都非常重要,在我从Go语言社区中瞎逛了一遍,才发现原来Go官方没有实现调试器,而且社区里竟然使用Print的方式来打印调试,想想...

    icepy
  • A Guide to Node.js Logging

    当你开始使用 JavaScript 做开发时,你可能学习到的第一件事情就是如何使用 console.log 将内容打印到控制台。如果你搜索如何调试 JavaSc...

    icepy
  • 从时间和资金成本考虑,如何获得加密货币交易所软件

    如果您选择第一个选项即自己开发加密货币交易所软件,则有必要建立一个专业团队启动和支持软件的搭建。应该特别注意的是,团队里的每一个成员都必须清楚地了解加密货币交易...

    金融科技先驱者
  • neo4j import tool

    Use the import tool 这篇教程提供了使用import tool的详细案例 当使用csv文件载入数据库时,为了能够创建节点之间的关系,每...

    学到老
  • 业务开发转基础开发,这三种「高可用」架构你会么?

        一种将后台开发细分的方式:前台开发(业务)、中台开发(中间件、应用基础服务、PAAS服务、IAAS服务)、后台开发(运维开发)。一般前台开发对应于业务开...

    静儿
  • Elasticsearch聚合学习之五:排序结果不准的问题分析

    版权声明:欢迎转载,请注明出处,谢谢。 https://blog.csdn.net/boling_...

    程序员欣宸
  • 【蓝桥杯】ALGO-11 瓷砖铺放

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    喜欢ctrl的cxk
  • 构建通用的 React 和 Node 应用

    原文:Build a universal React and Node App 演示:https://judo-heroes.herokuapp.com/ 译者...

    叙帝利
  • bootstrap tab切换如何让鼠标移动自动切换内容

      bootstrap集成了很多功能,比如nav-tabs组件,可以将相似的内容集中在一个区块中展示。bootstrap tab切换默认是要点击才会切换的,如何...

    ytkah

扫码关注云+社区

领取腾讯云代金券