fabric源码解析——序

fabric源码解析——序

个人是非go程序员,但是没办法,fabric项目就是用go写的。额外的用到了docker,grpc,protocol buffer,shell脚本,yaml配置文件,加密认证等或者是谷歌,或者是开源的各种技术。而且从GitHub下载的源文件中,源码,工具,预配置文件,示例,子项目,文档等都是放在一起的,初次接触,估计也无从下手。

本人也在学习之中,因此写此文章的目的既为记录自己的所学,也为与各位分享,也为找在学或已有心得的大神交流(文章中自己还没弄懂的地方会明确标出,大神给指点一下啊)。个人水平有限,因此文章着力于源码的结构和运用到的技术,而非体现的概念。概念这个层面,我也在边学边体会,大家可以多看看Fabric的文档和网上大神的介绍。不足之处,还望大神交流指点。

基本的思路

  1. 按照Fabric文档将Getting Started做一遍,进行初体验。这样对于Fabric这个还处于孵化阶段的项目有个初步的认识,有哪些东西初次接触的,也可以顺便学习一下。如果可以,把Fabric文档接下去的各种概念也大概看看吧,虽然是英文的,这些就是介绍的上文所说的概念。其实对于区域链这种比较新的技术来说,概念的理解远比对代码的理解重要,因为代码最终是去实现你这个概念的,而你学习研究代码,只是去验证代码确实如你所想干了该干的事情。由于本系列主要是代码剖析,因此之后的文章这一部分将直接略过。
  2. 根据 main函数 开始代码之旅。面对一个不熟悉的项目,最重要的就是能扯出一个线头,然后沿着线头一点儿点儿的解,最终一团mess的代码肯定会被理清。makefile大神也可以根据makefile文件入手。在分析源码的过程中,你就会和你所做的Getting Started,所了解到的关于区域链的技术和概念相互映证。

基于的版本

Fabric项目是正处于孵化项目的,因而会经常变动,而在阅读源代码过程中也能经常看到孵化的痕迹。本系列基于Fabric的v1.0.0版本。项目的下载地址是https://github.com/hyperledger/fabric,但是目前各位下载时是什么版本就不得而知了,因此将v1.0.0版本和文档(文档更新一点儿,但是文档的思想不会有大的变化,所有可以看)在网盘中分享fabirc-v1.0.0,密码s51j,方便对照阅读后边的源码分析(最好是对照着代码阅读源码分析)。基于这一点各位也要有所思考,该项目处于孵化器,各种技术是否合适,发展空间如何,都是可以考量的。也因此,目前所用到的技术,比如docker容器技术,只是在孵化期方便部署而引入的技术而已,将来成熟时可能只是选择之一而已,或者不是,这些都说不定,所以不用专门去学,重要的还是学习关于区域链核心实现的技术。

版权声明

本系列文章均以“fabric源码分析——”为标题前缀,亦均为原创文章。供学习交流使用,转载请标名出处,未经作者允许,不允许用于商业用途。

关于作者

王雅震,名不见经传,正在通往大神的路上努力着,希望能多和大神们多交流学习。个人邮箱:[email protected]

你可能感兴趣的:(Fabric)