- A+
官网
https://ethereum.org/
https://blog.ethereum.org/
https://forum.ethereum.org/
文档
1.wiki地址
https://github.com/ethereum/wiki/wiki
在这里有白皮书、黄皮书以及开发指南,比较全面。
2.白皮书下载地址:
https://github.com/ethereum/wiki/wiki/White-Paper
3.黄皮书下载地址:
https://github.com/ethereum/yellowpaper
4.Homestead文档:
http://www.ethdocs.org/en/latest/
5.Solidity编程文档:http://solidity.readthedocs.io/en/latest/
该网站提供了以太坊Solidity语言的全面参考手册,学习Solidity语言必备。
6.开发框架Truffle说明文档:http://truffle.readthedocs.io/en/latest/
以太坊目前很流行的开发框架Truffle的说明书,这个框架比较流行。
源码下载
工具
1.查询网络状态:https://ethstats.net/
该网站能全面的显示网络状态,包括节点、难度、算力等等,非常直观
2.以太坊网络扫描:http://etherscan.io/
该网站提供了以太坊网络的各种状态,比如帐号的详情、TOKEN详情,难度详情、区块详情,非常方便和直观。
3.实时交流网站:https://gitter.im/orgs/ethereum/rooms
该网站是以太坊的gitter chart的网站,根据项目分了很多房间,只要你提问题,大部分有人回答,很不错,不过只能英语交流。
4.第三方IDE:https://live.ether.camp/
这个是第三方发布的Solidity IDE,他的目标是企业级IDE,老外用的较多。
资源
1.以太坊应用资源:http://ether.fund/
该网站提供了以太坊很多应用资源,比如市场情况、合约辅助工具、已发布的智能合约、以太坊网络、DAAP等,方便开发和发布。
2.以太坊中文爱好者网站:http://ethfans.org/
客户端
Go客户端(go-ethereum)
go-ethereum就是通常所说的 geth ,它是一个用Go语言实现运行在以太坊完整节点上的命令行接口,安装并运行了geth,你可以成为以太坊正式链的节点并且可以:
- 挖矿得到真实的以太币
- 在账户地址之间转移资金
- 创建智能合约和发起交易
- 查看所有历史区块
- 还有很多很多功能
相关链接:
- Website: http://ethereum.github.io/go-ethereum/
- GitHub: https://github.com/ethereum/go-ethereum
- Wiki: https://github.com/ethereum/go-ethereum/wiki/geth
- Gitter: https://gitter.im/ethereum/go-ethereum
python客户端(pyethapp)
pyethapp 是基于python的客户端,实现了以太坊加密经济状态机,python实现旨在提交可用性和可扩展性的代码库。
pyethapp修改了两个以太坊核心组件来实现客户端:
- pyethereum - 核心库,区块链特性,以太坊虚拟机,挖矿
- pydevp2p - p2p网络库,节点发现,多路复用的传输和加密链接
相关链接:
- GitHub: https://github.com/ethereum/pyethapp
- Wiki: https://github.com/ethereum/pyethapp/wiki/Getting-Started
- Gitter chat: https://gitter.im/ethereum/pyethapp
Java客户端(Ethereum(J))
Ethereum(J) 是一个以太坊协议的纯Java实现,它提供了可以嵌入任何Java/Scala工程的库并且支持所有的以太坊协议和子服务。Ethereum(J)最早由 Roman Mandeleil 开发,现在由 <ether.camp> 提供赞助。
Ethereum(J) 支持CPU挖矿,由纯Java实现可以被使用在私有链和测试网络中,甚至你可以在以太坊公有链中使用,虽然没有经济收益。
相关链接:
- Blog: http://ethereumj.io/
- GitHub: https://github.com/ethereum/ethereumj
- Gitter chat: https://gitter.im/ethereum/ethereumj
链接到以太坊客户端
以太坊客户端通过一系列基于JSON-RPC
的方法与外界进行交互,然而,直接使用JSON-RPC进行交互,会极大增加开发者的负担,比如:
- JSON-RPC 协议的实现
- 智能合约的创建交互过程中二进制数据的编码和解码
- 256位的数字类型
- 管理命令的支持 - 例如:创建/管理地址,交易签名
一些列的库文件已经被编写好来解决这些问题,允许应用程序的开发者专注于各自的应用,而不被这些底层的协议交互干扰到:
Library | Language | Project Page |
---|---|---|
JavaScript连接(web3.js) | JavaScript | https://github.com/ethereum/web3.js |
Java连接(web3j) | Java | https://github.com/web3j/web3j |
Java连接(web3j)
web3j
web3j是一个轻量级的Java库,用于与以太坊网络客户端(节点)集成。
核心特性包括:
- 以Java类型的JSON-RPC实现与以太坊客户端的交互
- 支持所有JSON-RPC类型的方法
- 支持所有Geth和Parity方法来管理账户、签名交易
- 发送客户端同步请求和异步请求
- 自动从Solidity ABI文件生成Java智能合约包装
现在,同时支持 Go客户端(go-ethereum)和 Rust客户端(Parity)客户端。
相关链接:
- GitHub: https://github.com/web3j/web3j
- Website: http://web3j.io
- Wiki: https://github.com/web3j/web3j/wiki
- Gitter: https://gitter.im/web3j/web3j