Go Ethereum源码学习笔记000

这篇具有很好参考价值的文章主要介绍了Go Ethereum源码学习笔记000。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

这个专栏的内容是免费的,因为自己这边都是基于开源库和开源内容整理的学习笔记,在这个过程中进行增删改查,将自己的理解融入其中,所以这里用开源的精神分享给大家:Free software, free knowledge。当然,开源精神和软件付费/知识付费并不冲突,而是求同存异。大家觉得不错的,可以点个关注和订阅。

源码开源地址:

  • Go Ethereum
  • Understanding-Ethereum-Go-version

学习笔记的代码来自以太坊源码(上述开源地址Go Ethereum),学习笔记的内容主要参考理解以太坊(上述开源地址Understanding-Ethereum-Go-version),基于上述开源项目进行的学习和增删改查。

这一篇主要是走出第一步,之前一直都想深入研究以太坊的Go源码,但是总会有其他事情插入进来,以致于都没有完整把源码看一遍。总得给自己一个开端,然后把自己学习的每一步都踩出一个脚印来,这样做可以让自己更踏实的完成这个项目的学习。
下面是觉得《理解以太坊》写得比较好的两段文字,摘抄下来,大家有兴趣的也可以阅读原文,前面给出了开源地址。我所做的就是提取出比较好的内容,结合自己的理解,使其更加精简。


时代的弄潮儿: Blockchain

Blockchain 最早作为支撑 Bitcoin 结算的分布式账本技术,由中本聪在比特币白皮书提出,至今已经过了十几年。在这十几年中,随着加密货币价格的飞涨,区块链社区的参与人数不断的增加,大量的来自不同背景专业人士给 Blockchain 这一概念源源不断的注入新的想法。随着新的思想持续的涌入,区块链技术的边界不断的拓展,逐渐成为了融合了数据库分布式系统密码学点对点网络编译原理静态软件分析众包经济学货币金融学社会学等多个学科知识的一个全新技术领域。在源源不断的新技术催化下,Blockchain 也逐渐从小众的去中心化技术社区逐渐走向了主流社会的舞台,至今仍是当下最热度最高技术迭代最快最能引起社会讨论的技术话题之一。在 Blockchain 原生的 decentralized 的思想的影响下,市面上绝大多数的 Blockchain 系统都已经开源,并以开源的形式持续在 Github 上维护。这就为我们提供了一种的极好的学习 Blockchain 技术的方式: 结合文档,基于源代码,理解和学习系统的设计思想和实现原理。

为什么要研究以太坊& Go-Ethereum 的原理

从基础建设的角度看,随着网络基础建设的不断完善,网络带宽增加和通信延迟下降的趋势将会持续。伴随着存储技术和分布式算法的不断发展,未来软件系统的运行效率将会持续的提高,并且会逐渐逼近硬件设备的性能极限。这些技术的发展对构建大规模去中心化应用带来更大的确定性。在未来的五到十年内,云端服务/去中心化系统的性能以及覆盖场景一定还会有很大的提升。未来的技术世界会是两极分化的。一极是以大型科技公司(i.e, Google,MS,Oracle,Snowflake,and Alibaba)为代表的中心化服务商。另一极就是以 Blockchain 技术作为核心的去中心化的世界。在这个世界中,Ethereum 及其生态系统是当之无愧的领头羊。Ethereum 作为通用型 Public Chain 中的翘楚构建了稳定强大的生态系统。Ethereum 及其生态吸引到了一大批世界上最优秀的工程师和研究人员的持续的输出。不断的将新思想,新理念,新技术引入到 Ethereum 及其生态中,并且持续的引领整个 Blockchain 生态系统发展。从计算机技术的发展史上看,优秀的平台化的开源项目,例如 Linux,Android,拥有强大的生命力。由于这类项目的代码经过时间的验证,会有源源不断的开发人员基于这些项目的代码库来开发全新的应用。Go-Ethereum 作为 Ethereum 的优秀稳健的开源实现,目前已经被广泛的订制,被应用在了多种私有/联盟/Layer-2的场景中(e.g., Quorum, Binance Smart Chain, Scroll, Arbitrum , Optimism)。不管是哪种场景,Ethereum 的相关代码总是位于系统的核心中的核心位置。因此,作为开发人员/研究人员理解 Ethereum 的设计和实现是至关重要的。文章来源地址https://www.toymoban.com/news/detail-619777.html

到了这里,关于Go Ethereum源码学习笔记000的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • go 笔记 第七章 golang 的函数 func 方法

    声明函数 func 函数名(入参1 类型, 入参2 类型,… )(出参1 类型, 出参2 类型…){ 函数体,写逻辑 出参一定要全部 return, return 出参 } 函数内部不可以声明带名字的函数,可以声明匿名函数和自执行函数 函数名大写可以被其他包调用,小写私有,变量名也是一样 return 后面可以不

    2024年02月15日
    浏览(44)
  • Golang扫盲式学习——GO并发 | (一)

    并行:同一个时间段内多个任务同时在不同的CPU核心上执行。强调同一时刻多个任务之间的” 同时执行 “。 并发:同一个时间段内多个任务都在进展。强调多个任务间的” 交替执行 “。 随着硬件水平的提高,现在的终端主机都是多个CPU,每个CPU都是多核结构。当多个CPU同

    2024年02月07日
    浏览(45)
  • 以太坊创建私有链 go-ethereum

    目录 启动节点同步 同步主网区块 同步测试网络的区块 同步Ropsten测试网络的区块  同步RinkeyBy测试网络区块 搭建自己的私有链  创建genesis.json init初始化gensis.json  启动私链 安装好了Geth,现在我们可以尝试运行以下它。执行下面的命令,geth就会开始同步区块,并存储在当前

    2024年02月08日
    浏览(35)
  • 【区块链 | 智能合约】Ethereum源代码(2)- go-ethereum 客户端入口代码和Node分析

    上篇提到用 make geth 来编译geth客户端。我们来看看make file做了什么: 执行了 ci.go 里面做了两件事情 1,ln -s命令在build/_workspace/ 目录上生成了go-etherum的一个文件镜像,不占用磁盘空间,与源文件同步更新 2

    2024年02月03日
    浏览(41)
  • 听 GPT 讲 Go-Ethereum 源代码 (9)

    分享更多精彩内容,欢迎关注! 在go-ethereum项目中,core/rawdb/chain_iterator.go文件的作用是定义了区块链迭代器的结构体及相关方法。 该文件中主要定义了两个结构体,blockTxHashes和transactionIndex: blockTxHashes:该结构体是用于存储一个区块中的交易哈希值列表。它包含了一个区块

    2024年03月19日
    浏览(42)
  • 探索未来区块链:SidraChain 的 Go-Ethereum 实现

    项目地址:https://gitcode.com/SidraChain/go-ethereum 在深入探讨之前,我们先简单介绍一下项目。SidraChain/go-ethereum 是 SidraChain 团队对以太坊开源客户端 go-ethereum (也称为 Geth)的一个分支,它专注于优化性能、增强安全性和提升可扩展性,以适应日益增长的区块链应用需求。Geth 是用

    2024年04月13日
    浏览(50)
  • 【Golang项目实战】用Go写一个学生信息管理系统,真的太酷啦| 保姆级详解,附源码——建议收藏

    博主简介: 努力学习的大一在校计算机专业学生,热爱学习和创作。目前在学习和分享:数据结构、Go,Java等相关知识。 博主主页: @是瑶瑶子啦 所属专栏: Go语言核心编程 近期目标: 写好专栏的每一篇文章 学习了Go的基础语法知识,如何巩固和提升呢?跟着瑶瑶子写一个

    2024年02月02日
    浏览(56)
  • 学习如何在VS Code中创建一个Golang/Go项目,并运行一个简单的Golang程序

     学习如何在VS Code中创建一个Golang项目,并运行一个简单的Golang程序。 在VS Code 手动输入命令创建一个Golang项目 在VS Code 不输入命令创建一个Golang项目 1. 在VS Code 手动输入命令创建一个Golang项目 步骤1:在VS Code中创建一个新文件夹,用于存放Golang项目文件。 步骤2:打开VS

    2024年02月14日
    浏览(61)
  • 【Golang】一篇文章带你快速了解Go语言&为什么你要学习Go语言

    目录 1. 为什么互联网世界需要Go语言 1.1 硬件限制:摩尔定律已然失效  1.2 Go语言为并发而生 1.3 Go性能强悍 1.4 Go语言简单易学 1.4.1 语法简洁 1.4.2 代码风格统一 1.4.3开发效率高  2.Go语言的诞生与发展 2.1什么是Go语言   2.2 Go语言的诞生 2.3 Go Gopher——Go语言的吉祥物 3. 为什么

    2024年02月04日
    浏览(65)
  • 是时候回答【我为什么要学习 Go 语言(golang)】这个问题了

    想必每个人在学习新事物之前,都会扪心自问:“我为什么要学习它呢?” 正如我们读 四大名著 一般,也只有在您读过了 四大名著 后,再细看中国几千年历史不就是 天下大势合久必分,分久必合 ,再者,便是与友数人相聚,席间您述说您通勤时所遇到有意思的事了,而您

    2023年04月09日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包