区块链生态系统的十大开发者必备工具
区块链生态系统的蓬勃发展,离不开健康的社区、丰富的工具和专业的媒体资讯,但是正如大多数新兴技术所面临的问题类似,区块链的优质技术资源和开发工具信息仍然不够透明,大多存在于少数专家和优秀团队的头脑中,以下,我们翻译整理了BlockXLabs的区块链开发高手Jesse Abramowitz推荐的区块链开发工具和资源TOP10列表:
1.语言
其实区块链开发可以使用任何语言,只要虚拟机能够读取它,而你能够编写它就行。你可以走Ethereum或Cardano这样的区块链开发路线,也可以用Javascript自己写类似BUMO的东西,任何语言,只要有效就可以使用。
以太坊的开发,最常用的还是Solidity。
2.文档和培训
这是区块链开发方程中最重要的,有时是最被忽视的部分。对于每种工具都是如此,尤其是语言。我该如何使用它?有什么警告?它是现有的语言吗?如果是这样,它为何不同(例如不能使用非确定性代码)?
文档越详细越好,文档是区块链生态系统蓬勃发展的关键,因为它使开发人员了解区块链所需的一切。
3.编译器
无论特定区块链使用什么虚拟机,它实际上并没有运行我们正在编写的语言。代码需要编译成字节码然后虚拟机才可以对其进行操作,所以我们需要一个工具来做到这一点,就是下面要介绍的工具。
4.集成开发环境
Remix 是一个非常强大的以太坊开发工具。它非常适合编写代码和查找错误,同时也是一个很好的测试环境。从技术上讲,您不一定需要启动Remix这样的基于浏览器的整个IDE,而是可以为现有的IDE(如VS代码或Atom)创建插件。但是,有一点我可以证明的是,即使我已经开始使用Truffle进行实时部署,但依然坚持一直使用Remix进行构建和测试。
5.API服务节点
要理解为什么需要这样做,你必须了解有关区块链的一些基本事实。一个是你要做的不仅是与网络连接和交互。区块链(就像我们所说的那样)是一个全局状态机,所以如何在不知道状态的情况下如何读取或与之交互?
你不能。
那么你如何获得状态?这很简单,你只需运行一个节点并在你的笔记本电脑上同步它。这难吗?好吧,让我们这样说:
要做到这一点,你需要从创世块开始,然后在本地记录区块链上发生的每一笔交易。
所以,是的,非常难搞。
你也想关掉你的笔记本电脑去睡觉吗?没问题,您需要在第二天重新同步每个新块,并为其投入大量笔记本电脑资源。这太荒谬了,开发人员实际上很少这样做,所以我们需要的是端点(endpoint)。办法是通过Web sockets托管一个节点,你可以访问这个节点来调用和发送交易。
对于以太坊,主要端点服务称为Infura。
6. 区块浏览器 (Block Explorer)
我们怎么去读区块链?这里面的代码太多了。例如,要计算帐户中的交易列表,您必须遍历整个区块链,然后搜索该帐户的所有实例。区块浏览器可以记录和标记这些文件以进行搜索,以便于访问。区块浏览器实际上是区块链的直观表示。这对用户和开发人员都很重要。
7.浏览器扩展接口(钱包)
这延伸到了新一代互联网的概念。基本特征是使用点对点价值传输协议作为标准的协议,应用领域可以很宽。目前像gitcoin这样的DApps使用区块链来实现这个目的。相信有一天,我们的浏览器和手机将集成此功能(编者按:例如Opera),但今天我们还需要使用浏览器扩展对节点进行常量调用和交易发送。
示例:AION网络的AIWA
8.前端到后端库
这个主要面向开发人员。我们想要的是能使我们的前端变得更容易和更灵活的代码库。通过使用Web3 js库,我可以轻松地调用我连接的节点。这使得开发DApps更容易。
9.测试网络Testnet/Faucet
有很多方法可以测试智能合约和dapps。一种方法是在本地测试它。然而,由于缺乏实时网络的动态,只能被视为部分测试。您需要一个免费的网络,其运行方式与您要使用的主网络完全相同。我们最接近我们需求的是testnets,一个自愿维护并以与主网相同的方式运行的网络。这也有助于测试分叉,因为您可以在主网之前分叉测试网。
示例:Ropsten testnet。
虽然我们有一个testnet,但我仍然需要一些本地令牌来与区块链进行交互。我总能挖掘它,但我想快速移动并减少摩擦点。你需要一个DApp的水龙头免费提供令牌,以便开发人员可以测试。
示例:My Faucet(由BlockX Labs用♥构建)
10.通证标准(至少相当ERC20,ERC721的标准)
在2017年和2018年,ICO主导了加密市场。但是,通证流行的原因有很多。通证由于严格的安全标准会很复杂。并非每个开发人员都可以制作完全安全的通证,或者需要在大的应用程序中使用它。区块链是全新的事务,难以完全理解,但它也比其他系统更永久。
拥有经过多方测试的标准确实有助于减少安全性错误,将区块链带入主流并避免像批量溢出(batch Overflow)这样的黑客攻击。
示例:ERC-20
Bonus推荐:
11.加油站(Gas Station)
每笔交易都需要Gas(对于大多数加密货币)。它既是一个很棒的功能,也是这些网络的缺点。用户应当能够根据网络的当前状态计算他们想要使用多少Gas,这一点很重要。好的可视化是有益的,然而,更重要的是,需要有钱包可以调用的API,为用户建议合适的gas价格,否则将会有大量交易失败。
结论
我相信以上这些是可以让早期区块链生态系统蓬勃发展的关键工具。使用这些工具,开发人员将能够尝试不同的区块链,开发DApp等。
关于作者:Jesse Abramowitz是BlockX Labs的区块链开发人员。他曾参与多个DApps,项目和区块链网络。目前,他还是当地一所大学的实验室助理,致力于提供区块链咨询、培训和开发服务。
第一时间获取面向IT决策者的独家深度资讯,敬请关注IT经理网微信号:ctociocom
除非注明,本站文章均为原创或编译,未经许可严禁转载。
相关文章: