一、引子
进阶以太坊,整理以太坊开发学习笔记。
二、选择以太坊客户端
go-ethereum
GO:官方推荐的客户端,也是开发环境用得最多的客户端。通常被称为geth,它是个命令行界面,执行在Go上实现的完整以太坊节点。
cpp-ehtereum
C++
pyethapp
Pyethapp是以python为基础的客户端。
ethereumjs-lib
以太坊功能的javascript库。
Ethereum(J)
Ethereum(J) 是以太坊协议的纯Java实现。它提供嵌入Java/Scala项目的库,并为以太坊协议及附属服务提供支持。
ethereumH
这个程序包提供写在Haskell上的工具,可连接到以太坊区块链上。
Parity
Parity 声称是世界上最快速最轻便的客户端,它用Rust语言编写。
ruby-ethereum
Ruby最高效的开发语言,由以太坊中国唯一开发者jan实现。
三、选择开发语言
Solidity
JavaScript
Sepent
类Python
LLL
类Lisp
Mutan
类C
Bamboo
新推出的开发语言,应用于金融行业
四、选择开发框架
Truffle
Truffle是以太坊的开发环境,测试框架和资产管道。
Embark
Embark是用JavaScript写的去中心化应用开发框架。
Dapple
Dapple是Solidity开发者工具以帮助建立和管理以太坊类似的区块链上复杂的合约体系。
Populus
Populus是用Python语言写的智能合约开发框架。
Eris-PM
Eris Package Manager部署并测试私有和公共链上的智能合约体系。
五、选择合约交互
JSON-RPC
在命令行传入大量参数,易出错
web3.js
友好的交互接口