区块链Browser-solidity、Web3.js、Solidity、Cpp Ethereum介绍

以下为你介绍的区块链都可用在Linux系统上:Browser-solidity(Solidity 在浏览器中的 IDE)、Web3.js(以太坊兼容的 JavaScript API)、Solidity(契约型编程语言)、Cpp Ethereum(以太坊 C++ 客户端)。

1、Browser-solidity(Solidity 在浏览器中的 IDE)

Browser-solidity 是 Solidity 在浏览器中的 IDE 和运行时环境。Solidity 是 Ethereum 的一种契约型编程语言,其语法与 JavaScript 类似,并且旨在定位到以太坊虚拟机。

离线使用:

gh-pages 分支保持有最新的 Browser-solidity 稳定版本。它还包含具有整个构建的 ZIP 文件,下载可脱机使用。

注意:不支持其他编译器版本。

构建:

许多依赖关系只通过npm提供:

npm install    # fetch dependencies

npm run build  # build application into build/app.js

然后将浏览器指向 index.html 以打开应用程序。

下载地址:https://gitee.com/mirrors/browser-solidity

2、Web3.js(以太坊兼容的 JavaScript API)

区块链Browser-solidity、Web3.js、Solidity、Cpp Ethereum介绍

Web3.js 是 Ethereum 兼容的 JavaScript API,实现通用 JSON RPC 规范。

Web3.js 在 npm 里作为一个节点模块,在 bower 和 component 里作为一个可嵌入的 js 和一个 meteor.js 包。

使用:

Node.js:

npm install web3

Meteor.js:

meteor add ethereum:web3

作为浏览器模块。

Bower:

bower install web3

Component:

component install ethereum/web3.js

在 html 文件中包含 web3.min.js。

用法:

import Web3 from 'web3';

const web3 = new Web3('ws://localhost:8546');

console.log(web3);

> {

 eth: ... ,

 shh: ... ,

 utils: ...,

 ...

}

另外,您可以使用web3.setProvider()设置提供程序(例如WebsocketProvider):

web3.setProvider('ws://localhost:8546');

// or

web3.setProvider(new Web3.providers.WebsocketProvider('ws://localhost:8546'));

到此为止,现在您可以使用它了:

web3.eth.getAccounts()

.then(console.log);

TypeScript的用法:

我们支持仓库中的类型。

您可以按如下方式使用web3.js:

import Web3 from 'web3';

const web3 = new Web3("ws://localhost:8546");

如果您在诸如节点应用之类的commonjs模块中使用类型,则只需在tsconfig编译选项中启用esModuleInterop,还应启用allowSyntheticDefaultImports以实现类型系统兼容性:

"compilerOptions": {

 "allowSyntheticDefaultImports": true,

 "esModuleInterop": true,

 ....

下载地址:https://github.com/ethereum/web3.js

3、Solidity(契约型编程语言)

Solidity 是 Ethereum 的一种契约型编程语言,其语法与 JavaScript 类似,并且旨在定位到以太坊虚拟机。

Solidity 是静态类型的,支持继承、库和用户自定义类型以及其他功能。可以用来创建投票、众筹、盲拍、多签名钱包等合同。

Solidity 工具:

1]、Dapple 用于 Solidity 的软件包和部署管理器。

2]、Solidity REPL  控制台使用命令行尝试使用 Solidity。

3]、solgraph 可视化密度控制流程并突出显示潜在的安全漏洞。

4]、evmdis EVM 反汇编器对字节码执行静态分析。

例子:

与其他语言相比,Solidity中的“Hello World”程序使用更少:

pragma solidity ^0.5.0;

contract HelloWorld {

function helloWorld() external pure returns (string memory) {

return "Hello, World!";

}

}

要开始使用Solidity,您可以使用Remix,它是基于浏览器的IDE。

下载地址:https://github.com/ethereum/solidity

4、Cpp Ethereum(以太坊 C++ 客户端)

Cpp Ethereum 是以太坊的 C++ 客户端。

它是以太坊客户端中第三受欢迎的,位于 Geth( Go 客户端)和 Parity( Rust 客户端)之后。 该代码非常便于移植,并已在各种各样的操作系统和硬件上成功使用。

运行:

使用 geth。

使用 ethereum 控制台。

ethereum 控制台是一个 node.js 应用,它连接到正在运行的 eth / geth 节点并提供对 web3 对象的访问。

> npm install -g ethereum-console

> ethconsole

下载地址:https://gitee.com/mirrors/cpp-ethereum

注明

以上就是区块链Browser-solidity、Web3.js、Solidity、Cpp Ethereum的介绍内容,这些区块链都能使用在Linux操作系统中。

栏目相关文章