区块链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)
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操作系统中。