学习区块链的第一堂课--认识区块链

废话是有点多了哈,一定要看到最后,因为干货在最后~

本想着把文章的名字起做 《区块链学习心得第一天》,但今天已经是我接触区块链的第十一天了,感觉自己学了很多,又感觉自己什么都没有学到,脑袋里的知识并没有形成一种核心的结构,不能随时地取用,那就写点东西,记录梳理一下吧。

区块链发展至今,已经过了十一载,网上的学习资料太多太多,从入门到精通的系列文章也已经比较多了。不过我并不打算按照那个顺序,这里主要对自己这十一天的学习做一个总结全局性回顾,说说自己的学习思路,或许对后来的你会有所启发和帮助。不过写作过程可能会如同撒沙一样涣散,后续系列会逐步矫正结构,充实内容,形成一幅幅美丽的沙画。

自己也学了这么久的区块链了。这会说起来,首先会蹦出以下词汇:

区块链、挖矿、矿工、矿池、比特币、中本聪、UTXO、去中心化、哈希函数、对称加密及非对称加密、点对点网络、区块链数据结构模型、共识算法、工作量证明、POW、POS、拜占庭问题、PBFT、拜占庭共识算法、以太坊、合约、智能合约、交易、节点及节点分类、法定数字货币、solidity、图灵完备、Fibric、abi等等。

这里要感谢下我目前的公司,如果不是来这里,我估计也不会学这个东西,至少近几年可能不会。毕竟还有一大堆的分布式技术栈、微服务架构等着我去研究。

在学习新东西的时候,大家一般肯定都会先去了解下他的概念,如果是做技术的话,可能也会去写一些小demo,来场指尖上的舞动,这样印象会深刻些吧。

记录下自己的学习方式吧,大家有什么更好的学习方式,可以留言互动呀,一起学习进步。

首先因为公司发了一些区块链的资料,拿人钱财,替人办事,公司交代的东西,当然还是要好好学一学的,不过就好比上学时,那整篇拗口的文案,字是都认识,放在一起就有点看起来就是有点懵。不过也算是获得了一堆的区块链知识名词。

看了大概两天,觉得自己已经都看完了,应该是可以胜任工作了。然后去向领导请教,想开始着手工作了,结果领导问了几个问题。我懵圈了。

  • 节点是什么?有哪些分类?
  • PBFT是什么?说说共识过程?
  • 什么是交易?
    节点我是知道的,相当于就是区块链的每一个区块。但是有哪些分类?资料中没有呀。PBFT,自己只是扫着看了看,知道有那张三个阶段的图,以及(n-1)/3的共识策略,甚至连他的中文全称都忘记了,因为主要是看了POW,POS,还有一些DES、3DES、AES加密等知识。还有什么是交易,emm。这个理解的不到位,记忆也模糊了,说不出个所以然。

接下来的三天,怎么办呢,首先咨询同事,那节点分类有哪些?才知道在工作中,分为只读节点和共识节点(关于这两点,还需要在工作中在理解,简单来说:区别在于只读节点不参与共识验证,只做存储。)此外,感谢互联网的便捷,全网都是我的老师。然后在网上一顿搜索,看博客,加QQ群,微信群,期望能从群里或者一帮热爱技术热爱分享的人进行交流和学习。确实是有效果的,但是效果并不好。

还是得靠自己,看了那么名词,但毕竟是要靠这个吃饭的,不能只浮于表面呀,所以在网上就找了个区块链demo,开始跟着码,没有把它的复制过来,而是一边照着它码,一边理解。自己模拟搭建了一条链,还模拟了下比特币的交易过程,感觉有那味了。分布式账本记录交易记录,哈希算法进行工作量证明,UTXO代码模拟,感觉自己对区块链已经有点懂了。代码地址如下:

https://github.com/halfApe/JavaBookClub/tree/master/halfApe/src/main/java/com/kycode/blockchain

在这里插入图片描述

就这么瞎胡闹地学了一周,自认为算是对区块链有所理解了,然后再次找领导要活干,结果领导问了我几个问题,我又懵了。首先是上次的问题又问了一遍,因为我有准备,所以答的还是不错,但是关于PBFT的实现,我又没有细看,时间不允许。但是对于节点共识的分析,还是能说个一二的。
具体问题如下:

  • 合约是什么?合约有哪些分类?合约和交易的关系?用类和方法套合约和交易怎么对应?
  • 什么是图灵完备?
  • 以太坊智能合约了解吗?
  • PBFT的数学验证清楚吗?

经过交流之后,我才知道,我看的充其量是区块链1.0版本,而公司自己搭建的链是基于区块链2.0理念开发的,就是我们所说的后续引入智能合约的区块链技术。而企业级入门学习的最好例子是这个Hyperledger Fabric

so,再是一番百度、谷歌,才发现,想建成罗马,非一日可成也。因为领导也是再三问过PBFT,想通过代码实现去理解下,确发现有些算法写的实在很绕,一时啃起来比较费劲,还是先理解区块链在公司业务上具体如何应用先,至于难啃的算法,留下来慢慢啃。

到这里,也混进了一些区块链的圈子了,也有了写前辈推荐书籍和学习交流。哦,我自己也搞了个小群,对区块链感兴趣的伙伴可以一起来相互交流学习呀。
在这里插入图片描述

上面说了些自己的学习过程,自己反思总结了入门区块链学习过程,总结如下:

  1. 首先找几个博客先过一下基础概念还是很有必要的。
    推荐:
    a.阮一峰老师的区块链入门,篇幅短小精悍,不至于一上来就劝退。
    b.阮老师不合你换口味?看看这篇,或许对让你对区块链有别样的认识,并且感受到震撼,生产关系的飞升,我是被震撼到了。
    c.上面这篇太虚无?那就看看这篇,从当下火的一塌糊涂的Defi切入,向你女朋友解释什么叫做区块链
  2. 有了基础的概念,才只是在门外忘了一眼,要想有一个较深刻的感悟,还是要看看书的。这里推荐几本。(想要电子书的话,加我微信吧 )
    a.《图说区块链》
    b.《精通比特币》
    c.《区块链原理设计与应用》
  3. 毕竟区块链技术发展迅速,一些技术网站还是很有必要多看看的。
    a.巴比特
    b.登链社区

写在最后

很高兴你能看到这里,前面的东西好像是有点水了,总得有点干货吧,那么下面就对部分概念做一些解释。因为内容比较多,放在了另外一篇文章中,请点击《区块链基础入门》。可能里面还有很多店未提及,后续会持续维护呀。

由于笔者也是在初学阶段,有什么写的不对的地方,也请多多指教鸭。

猜你喜欢

转载自blog.csdn.net/aiwaston/article/details/108646357