顶尖的技术预言家已经将区块链列为十大新兴技术之一,这些技术在未来十年内有可能彻底改变我们的世界。这个事实让你现在花时间去学习是很值得的。如果您是一名具有Java背景的开发人员,并且希望了解区块链技术的最新进展,本文将为您提供入门所需的基本信息。
区块链是一个巨大的空间,一开始,它可以是压倒性的导航。区块链不同于其他软件技术,因为它有一个平行的非技术领域,关注投机、欺诈、价格波动、交易、ICO、加密货币、比特币最大化、博弈论、人类贪婪等。在这里,我们将完全忽略区块链的这一面,只看技术方面。
区块链的理论最小值
不管编程语言和实现细节如何,都有一些关于区块链的基本原理你应该熟悉。没有这种理解,就不可能掌握基础或建立在基础之上。根据我的经验,最起码要了解的两种技术是比特币和以太坊。碰巧这两个项目都在这个领域引入了一些新的东西,它们目前都拥有最高的市值、最高的开发者社区等。大多数其他区块链项目,无论是公共的还是私人的、无许可的或许可的,都是比特币或以太坊的分支,或者通过某些取舍来建立和改进他们的缺点。理解这两个项目就像在网络上使用网络、数据库理论、消息传递、数据结构和两个编程语言类,从而理解这两个BBLASH技术将如何打开你的大脑链。
以上是学习更多区块链开发的书籍。
我为此推荐的两本书恰好出自同一位作者——安德烈亚斯M。安东诺普洛斯:
精通比特币是最深入的技术书籍,同时也是最容易理解和阅读的书籍,我可以找到比特币。我查过的其他几十本关于这个话题的书要么是哲学的,要么是非技术性的。
在以太坊方面,有更多的技术书籍,但我最喜欢掌握以太坊的细节层次。
Building Ethereum Dapps是我发现的另一本非常全面地介绍Ethereum开发的书。
最流行的基于Java的区块链项目
如果你有技术背景,那么建立在这些知识的基础上,看看区块链能给你带来什么是有意义的。归根结底,区块链是一种新技术,但它包含了现有技术与网络效应推动的人类行为的结合。
值得一提的是,Java、.NET和关系数据库等流行技术在区块链领域并不常见。这个空间主要由服务器端的C、Go、Rust和客户端的JavaScript控制。但是如果你了解Java,有一些用Java编写的项目和组件可以作为区块链空间的杠杆式入口点。
假设你已经读过以上两本书,并且想弄脏你的手,这里有几个用Java编写的开源区块链项目:
流行的基于Java的区块链项目
- Corda—这可能是Java开发人员最自然的起点。Corda是一个基于JVM的项目,它构建在流行的广泛使用的Java项目之上,如apacheartemis、Hibernate、apacheshiro、Jackson和关系数据库。它的灵感来自比特币,但包含了业务流程、消息传递和其他熟悉概念的元素。看看我作为Java开发人员的第一印象。
- Pantheon—这是Java中以太坊节点的完整实现。它专门用来吸引Java生态系统的开发者进入区块链世界。这里是一个介绍和入门视频的创造者。
- BitcoinJ-这是比特币协议最流行的Java实现。如果您更喜欢直接从比特币开始,那么这就是要探索的Java项目。
- Web3J—虽然Corda和Pantheon是用Java实现的完整区块链节点的示例,但Web3J是用Java编写的客户机库。它有很好的文档记录,而且是一个活跃的项目,可以让与以太坊兼容的节点直接对话。我为它创建了一个Apache Camel连接器,并在这里对此进行了描述。
- Hyperledger Fabric Java SDK—最流行的企业区块链项目之一是Hyperledger Fabric,它有一个功能齐全的Java SDK可供使用。
- FundRequest—我还想向您介绍用Java编写的完整的最终用户应用程序。虽然上述项目是客户机或节点的例子,但FundRequest是一个在以太坊网络之上实现的开源融资平台,完全用Java编写。它提供了一个如何实现一个完整的区块链项目与以太坊网络交互的好主意。
- Eventum-这是一个Java项目,可以帮助您监视以太坊网络并在Kafka上存储事件。它解决了与分散的区块链网络集成时的一些常见挑战。
原文地址:https://dzone.com/articles/getting-started-with-blockchain-for-java-developer
除特别注明外,本站所有文章均为老K的Java博客原创,转载请注明出处来自https://javakk.com/2156.html
暂无评论