学院 区块链资讯 文章

什么是以太坊java

2020.06.10 何, 颖

有朋友想要了解什么是以太坊java,今天小编给大家介绍一下以太坊java的相关情况。

毫无疑问,Java是一种多功能且流行的编程语言。那我们来说说java基于以太坊的区块链以太坊java应用程序开发的好处。

对于开发像以太坊为基础的项目(为以太坊应用程序开发选择java)而言,这可能是一个令人惊讶的选择。在Oodles Blockchain,愿意选择Java for Ethereum来实现构建高性能基于以太网区块链的应用程序的愿景。由于一些重要原因,以太坊java非常适合区块链开发公司。从其社区的成熟度和规模到更多以太网特定和技术原因(如维护,可扩展性和速度)是使其成为开发基于以太网的大型应用程序的最佳编程语言的一些因素。

以太坊java可能需要预先编写更多代码,但从长远来看,它最终将有助于节省时间和精力。这是因为以太坊java客户端是庞大而复杂的应用程序。使用类似以太坊java的类型和静态语言重构和维护代码是可行的。以太坊java虚拟机(JVM)可以灵活地利用其他选项,例如使用Kotlin或Scala。此外,以太坊java还支持代码可移植性,并支持各种平台,包括移动,桌面和嵌入式平台。

以太坊java解决方案主要是由两个项目来实现的:
l EthereumJ(https://github.com/ethereum/ethereumj),实现了Ethereum定义的核心协议,完成了区块链的核心功能。l Ethereum Harmony(https://github.com/ether-camp/ethereum-harmony),提供了Ethereum用户访问层的功能。在EthereumJ里面,l 最底层的DataSource提供了数据的persistence。数据采用的是格式,以byte的形式保存,缺省使用的是Facebook的RocksDB。l Blockchain Management实现了以太坊定义的Trie node,Transaction,Block,Blockchain等数据结构,以及这些数据结构的管理功能。
l P2P Network实现了以太坊定义的devp2p协议,实现了以太坊的网络的,nodes之间的发现和nodes之间的通信功能。l Sync Management,实现了以太坊网络nodes之间同步blocks/Transactions的功能。l Block Mining实现了Ethash协议定义的block生成以及产生共识的功能。l Program/VM实现了Solidity的compile和prgram的执行功能。

此外,在Ethereum Harmony里面,l Json RPC还实现了以太坊定义的RPC接口,应用可以通过该RPC接口访问EthereumJ的数据,如Blocks,Transactions,Balance等。l Wallet实现了简单的Wallet功能,可以采用Ethereum Go相同的key store格式来保存Account的私钥。记录了Account的Balance余额。但是无法显示Account的Transactions的历史记录。以上就是小编以太坊java的基本情况,更多“以太坊java”等相关信息请关注OKEx数字货币交易所,掌握最新市场行情与动态https://www.okex.me/

加⼊OKEx全球社群

和全球数字资产投资者交流讨论

扫码加入OKEx社群

相关推荐

seo-cn