每一个可编程的区块链都有一套SDK或库,帮助连接并与特定的区块链通信。今天的大多数区块链都依赖于以太坊网络,使其与EVM兼容。如果创建了ETH库,就有可能在任何与EVM兼容的区块链上使用它。然而,通信是可以使用JSON-RPC协议的。

在这篇文章中,我们将对两个流行的ETH库进行比较。你可以了解到他们之间的差异,他们的优点和缺点。这篇文章也可以帮助你决定在未来的项目中使用什么库。

用于区块链的 JavaScript

自 1995 年 Brendan Eich 发明 JavaScript 以来,它已发展成为互联网上最常用的编程语言,用于构建当今使用的许多工具。据Statista[1]称,软件开发人员中最常用的语言是 JavaScript。

想象一下你需要解决一个特定的问题;你知道的唯一语言是 JavaScript。应该可以使用 JavaScript 来解决这个问题,而不是学习一门新的高级语言来解决问题。许多开发人员都面临着这个障碍,并找到了通过构建可以通过节点提供商连接到区块链的 SDK/库来使用 JavaScript 构建 dApp 的方法。

然而,这种变通降低了在区块链空间中构建的入门级别。您无需学习 Rust 和 Solidity 等高级语言即可为Solana[2]或以太坊链构建dApp[3]。

此外,降低区块链开发的入门水平是JavaScript的众多好处之一。

什么是库

在编写 dApp 时,您可能会发现需要为区块链上的特定交易重复的特定代码。此代码/程序可能很长,您必须为新项目继续编写此代码。无需重复此程序,您可以使用代码片段自动执行该过程。您可以在需要时随时将此库插入到您的项目中。这种方法可以加快开发速度并消除重复。

JavaScript 模块

Javascript 模块是包含 JavaScript 函数或代码簇的典型文件。您可以将它们提取到不同的文件中,而不是让函数遍布您的代码。创建模块使更改变得非常容易,因为您不必开始查看大型代码库来查找特定函数来更新变量或模式。

由于Javascript本身不支持类,所以JavaScript模块模仿了类。类帮助开发人员在单个对象中将方法和字段设为公共和私有。通过这种模式,我们可以使用 export 和 import 关键字在我们的 JavaScript 项目中创建和使用函数。请参见下面的示例:

export function myFunction(value1, value2) {
return value1 * value2;
}