简易区块链开发V3(Golang)
发布时间
阅读量:
阅读量
简易区块链实现V3(golang)
前言
此版本在前一版V2的基础上,新增了本地存储功能以及命令行操作支持。相较于此前的两个版本,该版本的开发难度有所提升,主要应用了bolt模块与flag模块,因此需要查阅相关文档进行学习。然而整体实现思路并不复杂,所需完成的功能目标清晰且易于理解,与区块链技术本身关联性不大,重点在于对功能的进一步完善。
代码和分析
首先需要完成本地化存储的实现,这里采用的是go语言中独有的bolt数据库,这是一种轻量级的键值对存储系统。
为了实现本地化存储,必须对先前设计的blockchain进行调整,使其具备数据库存储的功能。在此过程中,需要重新定义BlockChain结构体。由于数据需要存储至数据库,因此结构体中应当包含一个数据库成员。我认为仅设置一个数据库成员即可满足需求,不过参考教程中的做法,在结构体中额外添加了最后一个区块的哈希值,这样的设计可能在后续操作中更为便捷。
type BlockChain struct {
Db *bolt.DB
//LastHash []byte
}
此处所采用的本地语言中使用了bolt数据库,缺乏查阅资料的功能,仅能依赖文档进行操作
参
全部评论 (0)
还没有任何评论哟~
