木蚂蚁小程序

发现更多小程序的乐趣

以太坊不同客户端的定义是什么?以太坊不同客户端用途有哪些?

文 / 羽志尚
2018-02-18 19:33

  精品推荐

以太坊不同客户端的定义和用途如下,下面小编给大家介绍一下,希望你能喜欢!

以太坊发布以后,有多个客户端,同时也支持多个平台,初学者往往被各种各样的客户端弄迷糊,本文进行了详细的总结。

以太坊客户端以语言进行分类,在github上分成了不同项目,源代码地址:https://github.com/ethereum/,虽然以太坊客户端众多,但是有两个共同特点:

1、同一语言的客户端在不同平台上的使用是完全相同的

2、不同语言的客户端(mist、geth、eth等等)之间在同一个平台(linux、windows或OSX)上共用一样的应用配置,同时其命令行可使用的参数也是一致。

下面就以github上的项目为分类说明各个客户端的用途和特点:

一、go-ethereum项目

开发语言:go语言

客户端文件:Geth

界面:命令行

适用平台:windows、linux和OSX

功能和特点:该项目是使用最广泛的以太坊客户端,大部分节点都是运行的该客户端,教程和例子也最多,推荐使用,可用于挖矿,组建私有链,管理账号,部署智能合约等常用功能,不可以编译智能合约。

二、webthree-umbrella项目

此项目包含3个客户端

开发语言:c++

客户端文件:AlethZero、Mix和Eth

使用平台:windows、linux和OSX

界面:图形化界面

功能和特点:该项目严格来说是cpp-ethereum 项目的一个shell,是以太坊基金会的前CTO,Gavin Wood主持编写的,所以人气也很高,易用性也很好。AlethZero是图形化的钱包客户端,对应的是Geth的功能,不过是全图形化的。但是随着后续以太坊基金会主推的图形化钱包Mist的推出,渐渐没落。Mix 是智能合约(以太坊称为DAPP)的开发IDE,可以支持智能合约(DAPP)的编写、调试,部署,全图形化界面,目前最主流的以太坊智能合约开发平台,非常方便,强烈推荐。Eth是C++编写的命令行客户端功能和Geth一样。

三、Mist项目

开发语言:JavaScript

客户端文件:Mist(目前使用Ethereum-Wallet的名称)

使用平台:windows、linux和OSX

界面:图形化界面

功能和特点:该项目是以太坊基金会主推的项目,Mist定位不只是一个钱包,而是将来DAPP(智能合约的应用APP)市场,类似于苹果市场,在这里可以有你的账号,可以浏览、发布和买卖以太坊的DAPP应用。目前因为开发还不够

全面,名称暂时显示为Ethereum-Wallet,作用也很简单,就是一个钱包的功能。强烈推荐,未来的主流客户端。

四、solidity项目

开发语言:C++

客户端文件:solc

使用平台:windows、linux和OSX

界面:命令行界面

功能和特点:该项目是以太坊智能合约(DAPP)的编程语言,使用solc作为编译程序,该项目主要用于编译,严格来说是一个基本的编译平台,一般开发可用MIX替代。

五、browser-solidity项目

开发语言:C++

客户端文件:浏览器中显示

使用平台:windows、linux和OSX

界面:浏览器界面

功能和特点:该项目是智能合约浏览器版本的开发环境,可以支持在浏览器中直接开发、调试和编译,对于初学者来说,可以快速上手,不需要安装,非常方便,直接访问地址使用:https://ethereum.github.io/browser-solidity/

六、pyethereum项目和ethereumj项目

pyethereum项目是用python语言编写的以太坊客户端,ethereumj项目是用JAVA语言编写的以太坊客户端,只是语言不同,和前面GO语言编写的客户端Geth的功能完全相同。

七、etheminer项目

开发语言:C++

客户端文件:ethminer

使用平台:windows、linux和OSX

界面:命令行

功能和特点:该项目是cpp-ethereum项目的一部分,用于和Geth配合进行GPU挖矿,比CPU挖矿效率高100多倍,也可以用于矿池挖矿。

木蚂蚁小程序

发现更多小程序的乐趣