主页 > imtoken钱包下载安卓官网 > 以太坊生态系统中的工具和技术

以太坊生态系统中的工具和技术

imtoken钱包下载安卓官网 2023-06-21 05:48:57

以太坊生态开发_以太坊上有多少生态_以太坊生态缺陷

图片

如果您是 Ethereum 的新手或区块链开发人员,您可能会有点不知所措(至少我是)试图了解 Ethereum 生态系统中的所有工具和技术。 所以我决定简单介绍一下大家在开始学习以太坊时经常会遇到的各种组件。 希望这会帮助您全面了解整个以太坊生态系统,以及它的每个部分是如何组合在一起的。

1. 以太坊

以太坊是一个智能合约区块链平台,您可以在该平台上创建去中心化应用程序(也称为智能合约)。 如果您是技术专家,这份白皮书值得研究:

如果您之前创建过 Web 应用程序,我写过一篇比较以太坊区块链和 Web 应用程序架构的文章,这可能会帮助您更深入地了解以太坊。

2.盖思

Geth 是以太坊基金会官方提供的客户端软件。 它是用 Go 语言编写的。 该软件包括以下值得了解的组件:

客户端守护进程

当您启动客户端守护程序时,它会连接到网络中的其他客户端(也称为节点)并下载区块链的副本。 它将不断与其他节点通信,以保持其块副本是最新的。 它还具有挖掘区块并将交易添加到区块链、验证和执行区块交易的能力。 它还可以充当API服务器,您可以通过RPC访问其暴露的API接口。

以太坊生态开发_以太坊上有多少生态_以太坊生态缺陷

图片

终端机

这是一个命令行工具,可让您连接到正在运行的节点并执行各种操作,例如创建和管理帐户、查询区块链、签署交易并向区块链提交交易等。

迷雾浏览器

这是一个用于与您的节点通信的桌面应用程序。 您可以使用 geth 终端执行的任何操作都可以通过此 GUI 完成。

3.平价

用 Rust 编写的奇偶校验是以太坊协议的另一个很好的实现。 这是由一家名为 Parity Inc. 的公司维护的非官方客户端。任何人都可以实施此类客户端软件并加入以太坊网络。 你可以按照这个黄皮书的规范来实现你自己的客户端!

以太坊生态开发_以太坊上有多少生态_以太坊生态缺陷

图片

4.Web3.js

就像你使用 geth、mist 浏览器等与以太坊节点进行通信一样,还有一个名为 web3.js 的 javascript 库也可以用于与节点进行交互。 由于它是一个 javaScript 库,您可以使用它来构建基于 Web 的去中心化应用程序 (dapps)。

以太坊生态开发_以太坊上有多少生态_以太坊生态缺陷

图片

5.坚固性

Solidity 是用于编写在以太坊区块链上运行的智能合约的最流行的编程语言。 它是一种高级语言,在编译时转换为 EVM(以太坊虚拟机)字节码。 这与Java世界非常相似,有Scala、Groovy、Clojure、JR​​uby等JVM语言。所有这些JVM语言都可以编译生成可以在JVM(Java虚拟机)中运行的字节码。 您还可以创建一种像 Solidity 这样的语言,只要您遵循规范,它就可以在编译时转换为有效的 EVM 字节码!

还有一个很棒的基于浏览器的 IDE,您可以在其中编写智能合约并将它们编译并部署到区块链:.

6.松露/登船

就像您拥有 Ruby on Rails、Python/Django 等用于应用程序开发的 Web 框架一样,Truffle 和 Embark 是用于开发以太坊去中心化应用程序 (dapps) 的两个最流行的框架。 他们抽象出在区块链上编译和部署合约的许多复杂性。

如果您是以太坊去中心化应用程序 (dapp) 开发的新手,我在此处、此处和此处为您编写了一系列介绍性教程。

7.元掩码

如果您在以太坊社区闲逛了一个多星期,您肯定遇到过 Metamask。 它目前是一个用于与以太坊节点交互的 chrome 浏览器插件。 世界上每个人都运行一个节点来与区块链交互是不切实际的。 因此,编写 Metamask 的人自己运行一定数量的节点,这样您就不必这样做了。 您所要做的就是安装 Metamask,它会自动连接到他们的节点。

以太坊生态开发_以太坊上有多少生态_以太坊生态缺陷

图片

8. 英语

以太坊命名系统是以太坊世界的 DNS。 就像将 IP 地址映射到人类可读的名称一样,您可以将任何以太坊合约或钱包地址映射到人类可读的名称。

例如:146.115.22.177 → google.com。 无需在浏览器中输入IP地址,直接输入google.com即可解析为对应的IP地址。

例如:0x80C013d980aB049471c88E1603b8b4a60E03295C是我的钱包地址。 如果你想给我发送一些以太币,你不需要记住这个地址。 一旦 ENS 启动,我可能会将其映射到 mvmurthy.eth,然后你可以使用它轻松地向我汇款:)。

9.蜂群

区块链适用于存储少量数据。 如果您想存储需要公开时间戳的医疗记录、销售合同或大型文件怎么办? 在区块链中存储大块数据成本高昂且不可扩展。 Swarm就是用来解决这个问题的。 Swarm 是一种去中心化的内容存储和分发服务。 你可以把它想象成一个 CDN,但它并不是所有的 CDN 都托管在一个公司的服务器上,而是分布在互联网上的计算机上。 您可以像运行以太坊节点一样运行 Swarm 节点并连接到 Swarm 网络。

当您将以太坊合约部署到区块链时以太坊上有多少生态,您会获得一个部署地址和一个 ABI JSON 接口(类似于 API 的合约接口)。 当你想让别人使用你的合约时,你需要提供部署地址和 ABI。 未来ABI会存储在Swarm中,大家可以通过查看以太坊地址来查询ABI。

10. IPFS

IPFS(星际文件系统)在概念上与 Swarm 非常相似。 它是一个去中心化的存储系统。 与以太坊没有直接关系,但可以与以太坊集成。

你可以在这里看到 Swarm 和 IPFS 之间的区别:

11.耳语

你可能没有听说过 Whisper,但它是以太坊生态系统中一项有趣的技术。 它是 Dapps 之间交互的通信协议。 你可以在这里读更多关于它的内容:

下图试图将所有这些东西放在一起:

以太坊生态开发_以太坊上有多少生态_以太坊生态缺陷

图片

希望这能让您大致了解以太坊生态系统以太坊上有多少生态,并可以作为深入研究和了解每个相关组件的起点。

如果你有兴趣了解更多以太坊开发,欢迎联系我或在文章下方留言。

via:以太坊生态系统中的工具和技术