本文翻译自DashMagazine《10 Tools for Blockchain Development》,原文链接:https://hackernoon.com/10-tools-for-blockchain-development-67f862a03a36。有部分不影响原意的修改。
区块链虽然通过比特币等加密货币为大多数人所熟知,但它的用途远不止加密货币。很多世界知名的公司都在研究如何利用这项技术,比如摩根士丹利推出MPCoin、Facebook、Google等都推出了各自的区块链计划。国内如阿里巴巴、百度、腾讯等巨头也纷纷布局区块链。企业对区块链的兴趣自然会带来对区块链开发人员的需求。根据upwork的一份报告,区块链恰好是其平台上增长最快的技能,超过了TensorFlow和机器学习等技能,跻身前20名。
区块链不仅仅用于处理交易或存储价值,一些区块链能够执行智能合约,在其上开发应用程序(DApp)。如果你有志成为一名区块链开发者,或者想启动一个区块链项目,这里有10个区块链开发人员经常使用的工具推荐给你。当然,区块链开发工具有很多,这10个只是更受欢迎而已。
1、Solidity
Solidity是以Contact为导向的编程语言,用于编写在各个区块链平台(如以太坊)上执行的智能合约。Solidity具有与JavaScript编程语言类似的语法,并增强了以太坊虚拟机。感兴趣的可以点https://solidity.readthedocs.io/en/v0.4.24/,进一步了解。
2、Remix IDE
以太坊有很多用于编写和部署智能合约的工具,基于浏览器IDE的Remix是其中最容易使用的一个。Remix能在Solidity(编程语言)中编写、调试、测试和部署智能合约。
Remix是用JavaScript编写的,并且是开源的,所有人都可以免费使用。点击https://remix.readthedocs.io/en/stable/可以在查看他们的文档,以了解更多信息。
3、Text Editors
除了上面提到的工具,一些文本编辑器,如微软开发的Visual Studio Code、Atom.io、Sublime Text等都可以用来编写Solidity文件。
4、SoLC — Solidity Compiler
和其它编程语言一样,Solidity也有编译器。编译器能够将以Solidity编写的智能合约转换为以太坊虚拟环境可以理解的格式。
Solidity Compiler有两种,一是用C++语言编写的Solc,另一个是使用Emscripten就能交叉编译C++和Javascript的Solc-js。虽然Solc和Solc-js都是Solidity的编译器,但有一点要注意,Solc-js比Solc稍慢一点。不管怎样,它能使Remix和Pragma等平台能够顺利运行。
可以使用以下指令在Ubuntu上安装Solc:
sudo add-apt-repository ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install solc
Solc的windows二进制文件可以在这里获得:https://github.com/ethereum/solidity/releases
5、Solium
对于区块链开发者来说,安全性是开发中非常重要的一部分,这意味着你的solidity代码里不能有安全漏洞。这里,Solium就派上用场了。
Solium能够格式化你的Solidity代码以及修复代码中的安全问题。因此,它可以确保你的代码格式正确,并能用来检查漏洞。GitHub地址:https://github.com/duaraghav8/Ethlint
要使用Solium,需用npm进行安装:
npm install -g solium
solium -V
6、Parity
编译完成后,下一步就要设置在以太坊区块链上部署合约的开发环境。要与区块链进行交互,需要一个以太坊客户端,这里就是需要Parity的地方。
Parity是与区块链交互最快、最安全的方式之一,它由以太坊的前CTO Gavin Wood创立,用Rust编程语言编写。Parity直接融合到了Web浏览器中,它允许用户访问以太网以及Token钱包功能。它还充当以太坊GUI浏览器,允许访问以太坊网络的所有功能,包括dApp。
7、Geth
除了Parity,你还可以试试Geth,这也是如Parity一样的以太坊客户端。Geth在新手中很受欢迎,也被称为Go Ethereum,是用Go语言编写的。Geth适用于许多平台,包括Windows和Linux。
在Linux上,它可以通过PPA安装,如下所示:
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum
Windows和Mac OS用户,可以在这里下载安装:https://geth.ethereum.org/downloads/
8、MetaMask
如果你想通过浏览器轻松访问区块链,那么MetaMask是一个非常好的选择。它是一个Chrome扩展插件,可以显著改善用户与DApp的交互方式。
MetaMask通过托管多个节点来实现这一点,这意味着你的设备不需要成为节点。你只需要注册一个账户,就能自动连接到其中一个节点上。MetaMask允许你在浏览器上运行DApp,并能保护你的钱包,确保与它们进行的交易是安全的。
9、Truffle
Truffle是用于创建智能合约的工具。它是一个开发套件,旨在简化区块链开发,确保开发人员能够轻松地立即构建DApp。这个功能强大的框架允许开发人员使用Mocha和Chai等工具执行自动化测试,并执行可编写脚本的部署和迁移。这是它的GitHub地址:https://github.com/trufflesuite/truffle
可以使用Node Package Manager通过以下命令安装Truffle:
npm install -g truffle
10、DAppBoard
DAppBoard是以太坊智能合约的分析平台。DAppBoard是一个基于Web的分析工具,用于监控和分析以太坊区块链上的智能合约活动。
使用DAppBoard,你可以看到全世界的智能合约和DApp是怎样的。你还可以获取各个DApp的用户数量等信息。
除了上述提到的这些,还有很多区块链工具,如GanacheCLI,EtherScripter和Embark。你可以根据项目需求,选择合适的工具。
万向区块链有多个研发岗位虚位以待,包括开发、测试、产品等多个业务线,感兴趣的伙伴戳→_→https://www.zhipin.com/gongsi/1a13e42ae758b2ac0nF60tu_.html?ka=search_rcmd_company_1a13e42ae758b2ac0nF60tu_,可查看岗位详情并申请。加入我们,富有竞争力的薪资、丰厚的福利、专业的团队、优美的办公环境,等着你!