主页 > imtoken钱包下载安卓 > 以太坊工具合集,解决你的入门难点

以太坊工具合集,解决你的入门难点

imtoken钱包下载安卓 2023-03-12 05:54:21

【小屋】如果你是区块链或者以太坊的新手,当你第一次接触到以太坊生态中的工具和技术时,很可能会和我一样一头雾水。为了让大家对以太坊的技术生态有一个全面的了解,熟悉各个部分的组合,本文将简单介绍一下在研究以太坊时经常遇到的各种技术或工具组件。

以太坊

以太坊(ethereum.org/)是一个智能合约区块链,用户可以在其上构建去中心化应用程序(即智能合约)。

如果你是技术控,可以看看这份白皮书:github.com/ethereum/wiki/wiki/White-Paper 了解更多关于以太坊的技术原理。

如果你已经有web应用开发经验,也可以参考我之前的文章比较以太坊区块链和web应用架构medium.com/@mvmurthy/ethereum-for-web-developers-890be23d1d0c#.8wo4bi611,这篇文章或许对你有所帮助对以太坊有更深入的了解。

Geth(github.com/ethereum/go-ethereum)是以太坊基金会提供的官方客户端软件。它是用 Go 语言编写的,主要由以下部分组成:

1.客户端守护进程

当您启动此客户端守护程序时,它会自动连接到网络中的其他客户端(也称为节点)并下载区块链副本,并通过不断与其他节点通信来保持区块链副本的更新。它可以挖掘区块,将交易添加到区块链,验证区块中的交易,并执行交易。它还可以打开一个API接口成为一个可以通过远程过程调用(RPC)连接的服务器。

挖以太坊用什么软件

2.Geth 控制台

Geth 控制台 (github.com/ethereum/go-ethereum/wiki/geth) 是一个命令行工具,允许您连接到正在运行的节点并执行各种操作,例如创建和管理帐户、查询区块链、签名和提交交易到区块链等。

3.雾浏览器

这是一个用于与您的节点通信的桌面应用程序。任何可以用 Geth 控制台完成的事情都可以通过这个 GUI 完成。

Parity (github.com/paritytech/parity) 是以太坊协议的另一种实现,用 Rust 编写。这是由一家名为 Parity Inc. (parity.io/) 的公司维护的非官方客户端。任何人都可以配置客户端软件并加入以太坊网络。您可以按照此黄皮书 (ethereum.github.io/yellowpaper/paper.pdf) 中的说明配置您自己的客户端。

网页3.js

挖以太坊用什么软件

就像你可以通过 Geth、Mist 浏览器等工具与以太坊节点进行通信一样,还有一个 JavaScript 库叫做 Web3.js (github.com/ethereum/web3.js/ ),可以也可用于与节点交互。由于它是一个 JavaScript 库,因此可用于构建基于 Web 的去中心化应用程序(DApps)。

Solidity (solidity.readthedocs.io/en/develop/) 是编写智能合约(在以太坊区块链上运行)时最流行的编程语言。它是一种高级语言,通过编译转换为 EVM(以太坊虚拟机)字节码。这与Java的设计机制非常相似。Scala、Groovy、Clojure、JR​​uby等JVM语言编译生成运行在JVM(Java虚拟机)中的字节码。你也可以创建像 Solidity 这样的语言,当然前提是你遵循规范并且你的语言编译为有效的 EVM 字节码。

该语言还有一个基于浏览器的 IDE挖以太坊用什么软件,设计精美。你可以在这里编写合约、编译和部署到区块链:remix.ethereum.org/

松露/上船

就像我们在开发 Web 应用程序时想到的 Ruby on Rails、Python/Django 等开发框架一样挖以太坊用什么软件,有两个最流行的 DApps 开发框架:Truffle (truffleframework.com/) 和 Embark (github.com/iurimatias/embark -框架)。他们抽象出在区块链上编译和部署合约所涉及的许多复杂性。

如果你没有以太坊 Dapps 开发经验,可以参考我写的一个教程:

挖以太坊用什么软件

(一)(medium.com/@mvmurthy/full-stack-hello-world-voting-ethereum-dapp-tutorial-part-1-40d2d0d807c2)

(二)(medium.com/@mvmurthy/full-stack-hello-world-voting-ethereum-dapp-tutorial-part-2-30b3d335aa1f)

(三)(medium.com/@mvmurthy/full-stack-hello-world-voting-ethereum-dapp-tutorial-part-3-331c2712c9df)

元掩码

如果你在以太坊社区待过一段时间,你肯定知道 MetaMask(以太坊轻钱包,metamask.io/)。在我们发表这篇文章时,它是以 Chrome 插件的形式与以太坊节点进行交互的。每个用户在运行节点与区块链交互之前完成繁重复杂的配置是不现实的。因此,开发 MetaMask 的人积极维护了大量的节点,从而将其他用户从复杂的同步过程中解放出来。您只需安装 MetaMask,它就会自动连接到他们的节点。

ENS

挖以太坊用什么软件

以太坊域名系统(ENS,ens.domains/)是以太坊世界中的 DNS。正如互联网世界中的 IP 地址可以映射到人类可读的名称一样,任何以太坊合约或钱包的地址都可以映射到人类可读的名称。

例如:146.115.22.177→google.com。无需在浏览器中输入 IP 地址,您可以输入 google.com,它将解析为该 IP 地址。

同样:0x80C013d980aB049471c88E1603b8b4a60E03295C 是我的钱包地址。如果你需要给我转一些以太币,你也不必记住这个地址。ENS 发布后,我可能会将其映射到 mvmurthy.eth,您可以使用该名称轻松地将资金转给我 :)。

一群

存储少量数据时,区块链是可以的。但是,如果您想存储患者医疗记录、销售合同或一些需要公共时间戳的大文件,该怎么办?在区块链中存储如此大的文件数据的内存需求是昂贵的,并且不能扩展存储的块。Swarm (swarm-gateways.net/bzz:/theswarm.eth/) 就是为了解决这个问题而设计的。它是一种去中心化的内容存储和分发服务。您可以将其视为 CDN,但不是将整个 CDN 托管在一家公司的服务器上,而是通过 Internet 分布在多台计算机上。就像连接以太坊网络需要运行一个以太坊节点一样,你需要运行一个 Swarm 节点才能连接到 Swarm 网络。

当您将以太坊合约部署到区块链时,您将获得 ABI 的部署地址和 JSON 接口(类似 API 的合约接口,github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI)。当你想让某人使用你的合约时,你必须告诉他们部署地址和 ABI。未来,ABI 将存储在 Swarm 中,任何人都可以通过查看以太坊地址来查找 ABI。

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

挖以太坊用什么软件

您可以在此处了解有关 Swarm 和 IPFS 之间差异的更多信息:

github.com/ethersphere/go-ethereum/wiki/IPFS-&-SWARM

耳语

您可能对 Whisper 了解不多(github.com/ethereum/wiki/wiki/Whisper)。它实际上是以太坊技术生态系统中非常有趣的技术。这是 Dapps 相互交互的通信协议。你可以在以太坊官方文档中了解更多信息:

github.com/ethereum/wiki/wiki/Whisper

下图是我们上面介绍的一个排列:

希望这篇文章能让你对以太坊生态系统有一个宏观的了解,并且能够更深入地挖掘和理解它的每个部分。

更多精彩内容,请滚动到顶部点击右上角关注小宅~