EOS源码学习系列

2018-03-11  本文已影响0人  ansenyu

我为啥要学习EOS源码

正所谓不忘初心方得始终,在开始这个系列前,先简单聊聊为啥我要学习EOS源码吧。

首先,一直以来我对比特币和区块链还是蛮感兴趣的,不过大多认知都止步于科普文章/书籍和白皮书,这对于将"show me the code"常挂在嘴边的码农来说显然是不够的,要想深刻理解运用区块链必须要深入学习源码。

其次,目前EOS作为最被广泛看好的区块链3.0方案之一,被寄予了解决区块链扩容等问题的期望,但是网上关于EOS的技术文章大多停留在白皮书搬运(各种概念的炒作)和运行样例程序的浅层次阶段,这类文章已经比较丰富了。对于真正有志于参与区块链开发实践的读者来说,源码级别的学习经验分享更具有参考价值。

最后,EOS目前还处于发展的非常早期阶段,还没正式上线主网,还有大量的轮子需要被制造出来,熟悉了解源代码是参与社区建设的基本门槛。

源码学习系列概要

由于这个系列开始的时候EOS release了Dawn2.x版本并且上线了测试网络,这个应该是能够比较稳定运行的版本,所以这个系列先专注于Daw2.x分支的分析,后续新的feature上线文档后再另开系列分析,Github上项目分支在https://github.com/EOSIO/eos/tree/dawn-2.x

由于我也是边学习源码边写这个系列,分享我的学习过程,所以系列的组织结构上可能会有一定的变动。

为了方便,系列大体上参考源码组织结构,主要分为四个篇章,对应源码中四个一级目录:

这样分的好处是,文章组织与EOS软件架构保持同构,一个篇章主要集中在EOS架构的一个层面进行分析和讨论,同时,读者能够快速找到对应的源码。对于EOS的软件架构概况会在程序篇结合例子进行介绍。

等后续篇章和子文章丰富起来,和加深对EOS理解后,可以就个别主题打包文章集合,进一步贯穿分析讨论。

值得一提的是,写这个系列顺序是按照我的兴趣和关注点优先,如果有希望提高优先级的欢迎在评论区留言。另外,文中认识理解有误或争议的地方,恳请读者多指正,谢谢。

上一篇下一篇

猜你喜欢

热点阅读