转载请注明出处:www.huamo.online
字节杭州 求贤若渴:
go-ethereum/eth
eth包实现了以太坊协议(Ethereum protocol)
Ethereum定义
在backend.go中,可以看到Ethereum结构体的定义,该对象实现了以太坊全节点服务。
1 | // eth/backend.go |
Ethereum对象的配置Config
在Ethereum结构体中,第一个字段就是config *Config,Config本身也是一个结构体,定义在config.go文件中,包含了很多基础字段的定义。
1 | // eth/config.go |
代码中还提供了一个默认配置DefaultConfig,包含了用于以太坊主网络的默认设置。
1 | // eth/config.go |
config.go还包含了init()方法,只要导入eth包,该方法就会被执行,进行必要的初始化工作。
1 | // eth/config.go |
新建一个Ethereum对象
backend.go中的New()方法会新建一个Ethereum对象,包括普通Ethereum对象的初始化工作。
1 | // eth/backend.go |
总体来看,
eth包以及eth.Ethereum对象都是一个集大成者,调用了各个包的方法,把他们组装到一起,整体构成一个对外的以太坊服务,所以这个包应该是一个接近顶层的封装。
参考资料
转载请注明出处:www.huamo.online