主页 > imtoken钱包下 > 区块链开发的 15 种最佳工具
区块链开发的 15 种最佳工具
在过去的几年里,区块链的发展发生了巨大的变化。最初作为支持去中心化支付网络的一种手段,早已演变成去中心化的超级计算机,来自世界各地的开发人员可以在这里创建自己的软件应用程序。这是一个非常令人兴奋的空间,有很大的发展空间。但是,作为该领域新进入者的开发者,您可能会感到有些失落。这就是我们专门为您制作本手册的原因。
区块链开发的 15 个最佳工具
使用工具之前
在开始使用此类工具之前,您应该了解一些基础知识。
用最简单的术语来说,区块链是一系列带有时间戳的不可变数据记录,由不属于任何单个实体的计算机集群管理。这些数据块(即块)中的每一个都使用密码学原理(即链)进行保护并相互绑定。
比特币通过使用去中心化链为去中心化支付系统提供动力,将区块链带到了最前沿,但从那时起,区块链技术得到了更广泛的采用。像以太坊这样的项目告诉我们,人们可以使用公共区块链来创建去中心化的应用程序。
同样,组织可能更喜欢由 Linux 基金会创建的私有区块链服务,例如 Hyperledger。如果您正处于开发者旅程的开始阶段,那么了解比特币、以太坊和 Hyperledger 的工作原理至关重要。这就是你应该开始的地方。
最好的区块链开发工具
1 格特
Geth 是用 Go 编程语言实现的以太坊节点。简单地说,Geth 是一个充当以太坊区块链节点的程序。通过使用 Geth。用户可以执行以下操作:
您可以在此处下载 Geth。 Geth 在 Linux、Mac 和 Windows 上受支持。支持两种类型的安装,二进制和脚本。
启动Geth后,可以选择连接到:
但是,如果您不设置任何默认值,Geth 将手动连接到以太坊主网。 Geth 也可以用作输入单个命令和执行特定功能的控制台。需要记住的一件事是,在运行 Geth 时,它会手动下载整个以太坊区块链,这可能需要很长时间(甚至几天)。使用外部硬盘驱动器进行数据存储可能是有意义的。
2雾
在你开始使用以太坊之前,你必须有一个地方来标记和执行智能合约。 Mist,是由以太坊本身负责人开发的官方以太坊钱包。虽然使用 Mist 很有意义,尤其是对于智能合约部署,但您必须牢记一件事。这是一个全节点钱包,这意味着你必须下载整个以太坊区块链,大于 1TB。
Mist 适用于 Windows(32 位和 64 位)、Mac 和 Linux(32 位和 64 位)。
安装完 Mist 后,系统会提示您稍等片刻,因为软件会与您同步更新以太坊区块链。节点完全同步后,您将可以选择操作测试区块链或主区块链。如果你只是想测试以太坊,那么我们建议你使用测试区块链。
大约在这个时候,系统会要求您选择一个密码。您必须记住几件事:
3 索尔克
在以太坊开发方面,稳定性几乎是你的蛋糕和奶油。 Solidity 是一种有目的的简约、松散类型的语言,其句型与 ECMA (Java) 非常相似,用于在以太坊区块链上创建智能合约。但是,需要将solidity 脚本转换为以太坊虚拟机可以轻松读取的格式。这就是“solc”或solidity编译器的用武之地。
Solidity 编译器有两个王:
虽然从技术上讲,它们是使用几乎相同的源代码构建的,但实际上它们的结果通常略有不同。它们也有不同的命令行界面。话虽如此,solc-js 比 solc 慢一点。
大量的以太坊节点本身包含一个solc实现,但它也被打包为一个单独的模块用于离线编译。所以你可以决定使用 web3.eth.compile.solidity() 在你的节点上编译 Solidity 文件,或者你可以开始使用不依赖任何外部节点的 solc.compile()。
由 JavaScript 构建的可靠性编译器允许一些有趣的应用程序。其中一个应用恰好是我们的下一个工具 Remix。
4:混音
Remix 是我们用于大型协议的一个很好的编译器。如果你想学习solidity,那么这是最好的方法。只需访问他们的网站,您就会看到以下屏幕:
混音默认屏幕。您将在右侧看到一个允许您编写代码的屏幕。右侧允许您在区块链上部署代码并允许您与编写的函数进行交互。
用 Java 编写,Remix 支持浏览器或本地使用。 Remix 还支持智能合约的测试、调试和部署等。
Remix 的代码分析器可确保开发人员编写出最好的代码。 Remix 通过 Metamask 连接到以太坊区块链(稍后会详细介绍)。
5:区块链测试网
为以太坊虚拟机 (EVM) 编写程序,你需要考虑个别的事情:
这就是为什么您可能希望在使用主网实际部署 dapp 之前在测试网中对其进行测试。测试网是以太坊区块链的副本,几乎与主网相同,只是因为它们的以太币毫无价值(当然还有部署在此类测试网上的软件)。
共有三个测试网:
公开测试
公共测试网对所有连接到互联网的人都是免费的。任何人都可以使用 MyEtherWallet 或 MetaMask 等钱包界面连接到他们。可用的公共测试网有 Ropsten、Rinkeby 和 Kovan。
私测
您还可以选择获得自己的个人区块链、私有测试网,而不是公共区块链。那么,您究竟是如何构建这个个人区块链的呢?
您生成的创世文件将使用一个工具,例如 Geth,它将为您构建一个新链。然后通过 Mist、MetaMask、MyEtherWallet 等工具检测并与之交互。
那么,谁使用私有测试网?
此测试网可供从事敏感项目并需要模拟挖掘和交易确认的区块链团队使用,而不会让他们遭受黑客攻击。
这些私有测试网可以自由创建。唯一需要的费用如下:
此外,一旦私有测试网下降足够多,相关开发者可以将网络公开在线。
6 GanacheCLI
GanacheCLI(以前称为 Testrpc)是一个 NodeJS 包,它是一个快速且可定制的区块链模拟器。它在计算机上模拟以太坊网络,让您无需运行真正的以太坊节点即可调用区块链。
您可以在 GanacheCLI 中执行以下操作:
7:Coinbase 的 API
Coinbase 是一家位于温哥华的“法定加密货币”交易所。在过去的 3 到 4 年里,它已成为世界上使用最广泛的交易所之一。 Coinbase 的 API 允许开发人员构建新的比特币应用程序并将比特币集成到现有应用程序中。
该系统支持多种功能,从收集只读数据到构建特殊的东西。此外,Coinbase 的 API 提供了一个用于在全球范围内创建比特币钱包和地址、购买、出售、发送和接收比特币的系统,并且它们提供了几个对开发人员和 Unicom SDK 特别有用的客户端库。
除此之外,Coinbase 还提供了一个简单而强大的 REST API,用于将比特币、比特币现金、莱特币和以太币支付集成到您的业务或应用程序中。
8:以太坊
对于新手开发人员而言,以太网脚本编写是一项具有挑战性的任务。 Etherer 提供了一个特别有趣的接口,可用于开始编写基本协议。该界面是一个简单的拖放操作,您必须连接拼图才能使您的协议栩栩如生。在某个时刻,它只能与 Serpent 编程语言一起使用。
这是使用 Etherer 实现“硬币翻转”智能合约的实现:
您可以通过一种特别酷且直观的方式来查看拼图块如何组合在一起。
9:BaaS
区块链即服务 (BaaS) 是最近流行的一个术语。 BaaS 基本上是一种产品,它允许其用户“使用基于云的解决方案在区块链上构建、托管和使用他们自己的区块链应用程序、智能合约和功能,同时基于云的服务提供商管理所有必要的保持基础设施灵活和可操作的任务和活动。”
为简单起见,使用了区块链并且不处理保持区块链可用的任何操作问题。这几乎模拟了软件即服务或 SaaS 的工作方式。
这项服务对于长期希望采用区块链技术但受技术复杂性和运营费用限制的个人或公司特别有用。
许多初创公司和大公司已经提供 BaaS 服务。微软创建了 Azure 来提供这种服务。它是开发人员在安全且更实惠的环境中构建 dapp 的有用工具,支持包括 MultiChain、Eris、Storj 和 Augur 在内的多个链。
用户向 BaaS 服务提供商付费以建立和维护区块链基础设施。提供商基本上处理客户端及其业务的复杂前端。
10:元掩码
Metamask 为其用户提供软件,允许他们为 ERC-20 资产提供服务,并允许他们与以太坊 Dapps 交互。最好的部分是,他们可以在浏览器中完成。 Metamask 可以作为 Google Chrome 扩展程序或 Firefox 插件轻松安装。设置相对简单。
安装应用程序后,您的浏览器外部有一个以太坊钱包,它还可以存储所有 ERC-20 代币。有趣的是,Metamask 可以成为开发人员与各种以太坊测试网交互的特别有用的工具。
11:Ethers.js
Ethers.js 是为 ethers.io 创建和使用的库。它致力于让编写基于 Java 的客户端钱包变得更容易,并始终将公钥保存在所有者的计算机上。
Ethers.js 是 web3 的替代品TECO区块链能做吗,它恰好是以太坊应用程序最常用的库。以下是 ether.js 的一些最有趣的属性:
12:层级
通过提供人工工具和 API 将数据添加到分布式账本中,Tierion 可以为比特币区块链上的任何数据或流程创建可验证的数据库。 Tierior 还开发了一个名为 ChainPoint 的开放标准,用于记录数据并生成包含验证数据所需的所有信息的发票,而无需依赖任何中介。
据他们说,
“我们看到未来区块链将用于验证从医疗记录到在线订购的所有内容。我们正在完善可以增加成本和信任的技术和复杂性。产品。”
Tierion 技术基础设施的核心是 Chainpoint Proof 合约。该协议仅在用户将内容添加到 Tierion 的数据存储时才有效。 Chainpoint 和 Tierion 的 API 将数据锚定到区块链以生成时间戳证明。
由于其高度可扩展的架构TECO区块链能做吗,Chainpoint 还能够每秒创建数百万份日报。它还通过从网络时间合同 (NTP) 服务器和美国国家标准与技术研究院 (NIST) 收集数据并将锚点链接到比特币和以太坊区块链来降低其证明的准确性。
13:开始
Embark 是以太坊 dapps 的开发者框架,因此这意味着它允许您使用去中心化技术轻松开发和部署 dapps 或无服务器 html5 应用程序。 Embark 让您可以创建新的智能合约并使其在 JS 代码中可用。此外,它会监控修改,如果您更新协议,Embark 将手动更改协议及其关联的 dapp。
如果有多个协议,Embark 将处理智能合约迁移,根据需要手动重新部署协议并监视修改。它们支持“Java 中的测试驱动协议开发,并允许开发人员轻松管理不同区块链上的协议,例如测试网、私有网络和实时网络。”
对于使用 Embark 平台 Interactive,您可以使用传统的 Web 开发语言,如 Angular、React、Meteor 等。您还可以使用任何您想要的构建管道,包括 grunt 或 gulp。
14:松露
Truffle 和 Embark 一样,是一个伟大的以太坊框架。以太坊开发提供了开发环境和资产管道。它还包括对链接复杂以太坊应用程序的库的支持,并提供自定义部署以使编写新协议更容易。以下是您会喜欢的 Truffle 的一些功能(取自 Truffle GitHub 文档):
15:我的以太钱包
毫无疑问,存储任何加密货币的最安全方法是使用纸质钱包。在您作为开发人员的旅程中,有时您可能希望以安全可靠的方式节省大部分加密收入。您可以使用两种类型的存储:
纸质钱包是一种冻结形式,基本上是最安全的存储加密形式。
它涉及将您的私钥和公钥复制到一张纸上(因此称为纸质钱包),然后您将其存储并保存在安全的地方。密钥以二维码的形式复制,您可以在未来扫描所有交易。它如此安全的原因在于它为用户提供了完全的控制权。您不必担心硬件的快乐,也不必担心黑客或任何类型的恶意软件。您只需处理一张纸。
如果您想将加密安全保存在纸质钱包中,请按照我们的手册进行操作。
区块链发展推理