主页 > imtoken苹果钱包app > 【前往】blockchain-tutorial 区块链技术教程

【前往】blockchain-tutorial 区块链技术教程

imtoken苹果钱包app 2023-03-05 05:25:01

地址

区块链技术学习介绍介绍

作者:Jim.Peng 时间:2018-10-16 14:18 地点:北京市昌平区

很高兴来到火链区块链学院与大家分享我学习区块链技术的心得文章。在准备这些教材的时候,我觉得有必要和大家聊聊我们正在学习的中国区块链的一些教程材料。目前,区块链技术在中国如火如荼,各种教程也在互联网上传播开来。国内很多教程都有很多很花哨的概念和错误的定义,不利于初学者入门,不过这种情况也符合国情。我很负责任的告诉大家,从程序开发者的角度去学习和理解区块链才是真正正确的学习方向。从技术层面去理解区块链技术,不会遇到太多花哨的概念。 ,并且能够真正理解区块链技术的底层原理和应用方向比特币经典入门书籍,对市场上的一些说法和理论进行真正的去伪存真。

了解比特币

比特币是中本聪用C++编写的数字货币系统,俗称比特币系统。因为比特币系统是区块链技术的应用,所以很多技术人员首先从比特币系统学习区块链。为了便于理解,不同编程语言的技术人员,原则上根据中本聪比特币系统的源码机制,使用不同的语言实现不同语言版本的比特币系统。所以你看到有各种版本的比特币系统,比如 Java、Python、Golang 等。

注意:你需要明白的一点是,只有中本聪的C++版本的比特币系统才是真正的比特币系统比特币经典入门书籍,其他任何语言版本都是模拟比特币系统的实现,目的是用你所擅长的at 语言了解比特币的机制和原理

我们需要学习比特币系统的机制和原理,选择使用Golang技术。模拟比特币机制实现的过程也称为“公链开发”。最权威的参考教程来自国外开发者Ivan Kuznetsov的7篇文章。

Ivan Kuznetsov 博客中的 7 篇文章如下:

如果您想查看以上信息的中文翻译版和对应的源码,可以点击这里

注意:以上文档中的图纸和代码存在一些小问题,但是比特币的机制和原理已经很好的解释了。了解以上代码后,再去其他相关的比特币理论书籍。了解更深。

我个人认为,国内值得一读的国外区块链理论翻译书籍只有2本

为什么使用 Go 进行区块链开发?

很多人会问一个问题,比如比特币源代码中本聪是用 C++ 编写的,为什么我们今天要使用 Go 语言来开发区块链?从逻辑上讲,使用 C++ 更适合我们。中本聪在 2008 年发布了比特币,Go 语言在 2009 年发布。在中本聪的时代,没有 Go 语言可供选择。相比之下,如今 Go 比 C/C++ 更适合开发块。链的原因如下:

C/C++的优势在于可以手动分配和回收内存,其主要应用场景在于三个方面

由此可见,C/C++的应用层面是CPU和内存层面,而区块链是分布式应用的开发。区块链考虑IO级别、GC垃圾回收、类型安全控制是区块链更多。 Go语言可以很好地做到这一点,比C/C++开发更简单直接,而且Go本身也有很好的数学算法库可供开发者调用。

每次我这样说,都会有人提出异议。那么我们为什么不使用 Java 和 Python 来开发区块链呢?原因很简单,因为 Java 和 Python 都需要运行在虚拟机上,在部署分布上用虚拟机进行分布式部署会使开发变得异常复杂,而 Go 语言是为云计算的分布式应用而设计的语言,众所周知作为下一代云计算语言。它是可执行的,无需携带虚拟机即可直接部署,用Go语言的net包实现的服务器和分发可以媲美Nginx。所以Java的主战场是大数据,Python的主战场是机器学习。唯一合适的发行版是 Go 语言。

综上所述,Go适合开发区块链的合作链,Go开发的应用是分布式的、安全的、易于部署的。

区块链的协链是区块链技术的底层,即围棋是区块链底层的开发,其他一些应用是Hyperledger的项目开发。

了解以太坊

比特币的诞生让人们认识到了区块链,所以很多人把比特币称为区块链技术的1.0时代。而比特币在过去近10年的时间里,一直在稳步前行,非常稳定。