Solidity
Solidity是区块链开发中最流行的编程语言之一。它支持面向对象的范例,用于编写智能合约。以太坊dApps也可以用Solidity编码。Solidity旨在针对以太坊虚拟机(EVM)。
那么,什么使Solidity如此独特?首先,它被用于最流行的区块链解决方案之一,即以太坊。其次,它可以用于开辟各种用例的智能合约,特别是在众筹,投票和多签名钱包方面。
作为区块链开发人员,您可以通过Solidity文档开始。
Cakeshop
Cakeshop允许您管理本地区块链节点。
它附带了API和工具,您可以使用它们来设置集群节点,处理合同以及探索链。
Geth
Geth是以太坊节点的实现。它是使用Go编程语言创建的。Geth用于以太坊区块链的各种任务。
它可用于转移令牌,挖掘以太币令牌,以及创建智能合约。此外,它还可用于探索块历史。
Geth在三个界面中可用,包括:
JSON-RPC服务器。
命令行。
互动控制台。作为区块链开发人员,您可以在Windows,Mac和Linux上使用Geth。安装Geth后,您需要连接到现有的区块链或创建自己的区块链。为简化起见,Geth自动连接到以太坊主网。
警告:在您开始使用之前,Geth会下载整个以太坊区块链。根据您的互联网速度连接,可能需要一段时间。我们还建议使用外部硬盘来存储以太坊区块链。
区块链测试网
作为区块链开发人员,您将始终需要区块链testnet。
它是一个必不可少的工具,因为它可以让你在生活之前测试你的dApp。每个区块链解决方案都有自己的testnet,我们建议您使用相应的testnet。
Testnets特别有用,因为它可以让您在不花费实际资源的情况下进行测试。例如,以太坊使用天然气作为燃料来执行不同的行动。开发人员每次进行测试时都不能消耗燃气。这意味着花费数千美元来测试。这是不可行的。
一个测试网允许区块链开发人员在不花费大量现金的情况下解决错误。testnet的选择取决于您的dApp。您可以使用公共测试,私有测试或GanachiCLI - 可自定义的区块链模拟器。
区块链即服务(BaaS)
实施完整的端到端区块链解决方案对任何业务都不实用。这产生了区块链即服务(BaaS)。
借助BaaS,企业可以使用云基础架构创建和托管其dApp解决方案。他们必须为使用BaaS付费。此外,他们还需要雇用区块链开发人员来处理所有实施流程。
作为区块链开发人员,您应该知道如何使用BaaS。它可以帮助您获得更多的信任和声誉。它类似于软件即服务(SaaS)模型。您应该了解的一些BaaS解决方案示例包括Azure,Microsoft和SAP。
Truffle
Truffle是一个以太坊区块链框架。它为以太坊开发提供资产管道和开发环境。
使用Truffle,您可以开发复杂的以太坊dApp和智能合约。它有一个庞大的库,可以帮助您解决具有挑战性的要求。
Truffle提供的主要功能包括:
使用Chai和Mocha自动进行合同测试。
完成智能合约开发,包括链接,编译和部署。
使用可配置的构建管道执行自定义构建过程。Ether.js
在开发客户端JavaScript钱包时,Ether.js是一个方便的工具。它可以让您与以太坊区块链进行交互。最初,它只用于与ethers.io合作,但现在,它是一个成熟的通用库。
Ether.js的主要功能包括:
私钥在客户端安全。
使用MetaMask,Etherscan和其他工具轻松连接到以太坊节点。
体积小,压缩88kb。
很棒的文档。
开源(附带MIT许可证)。Remix IDE
Remix IDE是一个从浏览器运行的流行IDE。它允许您从浏览器开发Solidity合同。
它是使用JavaScript开发的,这意味着您可以使用任何现代浏览器。您也可以在本地使用它。它带有模块支持,可为IDE带来更多功能。
例如,您可以使用文件资源管理器模块来保存或加载计算机中的文件。其他有用的模块包括插件管理器,可靠性编辑器,终端和设置。
他们也有很好的文档。
Hyperledger Caliper
Hyperledger Caliper可让您检查区块链性能。
它可以使用不同的参数确定区块链性能,包括延迟,成功率,资源消耗和吞吐量。
SOLC
如果你已经使用了Solidity,你已经知道它的语法类似于ECMAScript,因为它是一种松散类型的语言。但是,以太坊虚拟机使用的格式略有不同,这使得Solc成为以太坊相关项目的必备工具。
Solc是一个Solidity编译器,可将solidity脚本转换为更易读的格式。它的受欢迎程度也可以通过大多数以太坊节点本身来实现。
Solc也可用于离线编译。
dAppBoard
dAppBoard是一个用于以太坊智能合约的分析平台。此外,它还附带以太坊区块链资源管理器。
dAppBoard是基于Web的,可让您监控在以太坊网络上运行的智能合约。它可以为您提供信息,例如特定dApp的用户总数或整个以太坊网络的概述。
结论
这导致我们结束了区块链开发的最佳工具。作为开发人员,您应该始终关注新工具。最好的方法是观察其他开发人员开发有趣的东西。这样,您就可以了解哪种工具适合您。