区块链程序本质上与普通的软件是一样的,因此在开发方式上并没有什么特别的区别。
从开发语言上来说,但凡是图灵完备的语言都可以用来开发,比如C++/Java/Go/等,还有现在比较流行的 Node.js,目前来说,生产环境的正式程序开发,使用C++和Go比较多,比如比特币就是使用C++开发的,以太坊是使用Go开发的(以太坊同时也有 其他语言的版本,如C++、Python),而一些测试环境的程序会使用Node.js,比如模拟以太坊环境的testrpc程序,testrpc是使用 JavaScript开发的,并且以Node包的形式发布。可以说,语言选择上没什么限制,选择自己熟悉的即可,个人比较推荐Go,运行效率不错,且Go 本身是运行在虚拟机上的,因此也跨平台,语法也容易上手,不过Go目前不太适合开发图形界面,好在区块链核心程序本来也不需要界面,各种带界面的客户端可 以使用WebApp的方式来搭建。
从操作系统环境上来说,比较推荐Linux或者Mac系统,这个就不再赘述了。
开发工具没什么特别要求,以微链来说,是使用go语言来说明的。编辑器使用Visual Studio Code或者Vim皆可,编译则可以直接使用Go的编译命令go build,如果嫌麻烦,也可以使用一款叫LiteIDE的开源集成开发环境。关于Go语言的安装和配置这里就不赘述了,官网有很详细的说明。
开发环境的说明基本就是这样了,大家在实验编写代码时,不用一开始就考虑太多的关于优化或者代码结构组织等方面的 问题,我们的目的是理解区块链代码而不是优化区块链代码,这些事等真正开发应用的时候再考虑不迟。另外,带着实验、玩乐的心态来摆弄区块链是最有意思的, 很多时候,阻碍我们去创新的,不是技术,而是应用思想。
来源:我是码农,转载请保留出处和链接!
本文链接:http://www.54manong.com/?id=71