区块链编程七大语言,使用最多的竟是 Java
区块链开发行业吸引到了数十亿美元的投资,各项目为了能吸引到市场上最好的区块链人才相互竞价,使得区块链开发人员的薪酬以及对相关人才的需求水涨船高。
这股淘金热可能会让部分开发者好奇他们是否拥有进入这个行业的实力,以及这个新行业中哪种编程语言最受欢迎。几乎所有受欢迎的编程语言在区块链行业中都有用到,但是开发者必须考虑自己要进行哪种类型的开发,因为不同的编程语言适用于不同的区块链项目和应用。
为了便于打算深入这个行业的开发者理解和打好基础,下文简要介绍了不同项目以及它们使用的编程语言。
Solidity?——一种简单的新编程语言,在以太坊开发者中很受欢迎,因为以太坊智能合约的开发使用的就是这种语言。Solidity 是一种合约导向、图灵完备的编程语言,其开发者数目估计超过 20 万。
由于以太坊在智能合约上抢占先机,很多其他区块链平台也在确保与 Solidity(或 ERC-20)兼容,以便可以轻易地将智能合约从以太坊移植到他们的新区块链网络上。
以太坊——从技术层面讲,以太坊的作用相当于一个以太坊虚拟机(EVM),也被形象地描述为“全球计算机”(world computer),由 C++、Python、Ruby、Go 和 Java 等编程语言组合合成。JavaScript 是以太坊的基础,因为它的作用相当于一个有脚本执行的运行环境。
Java——是一种并发执行、面向对象、基于类型的通用编程语言,Java 的执行依赖很少。自 1995 年发布以来,Java 已成为排名前 3 的编程语言,拥有超过 900 万名开发者。知名区块链平台 NEM 的区块链网络就是完全用 Java(不久后会改用 C++)编写的。
C#?——一种面向对象的编程语言,开发者可以用它构建在.NET 框架上运行的强大应用,C#全球至少拥有 200 万名开发者。C#诞生于 2000 年,一经推出便备受开发者欢迎,被用于编写可以在多个操作系统(例如:Windows、Mac、Linux、和 Android)上运行的跨平台代码。用 C#?编程的区块链项目有:
Stratis 是微软扶持的一家区块链服务提供商,它可以让企业构建属于自己的私有区块链系统。
NEO 虽然是用 C#编写的,但是也支持 Javascript、Java、Python 和 Go 等编程语言。
Javascript?——通常简称为 JS,是一款多重范式编程语言,支持事件驱动、函数式和命令式(包括面向对象和基于原型)编程风格。它是世界上最受欢迎的编程语言之一,全世界使用人数至少有 970 万。
Lisk 的侧链开发组件(SideChain Development Kit,SDK)就是用 JavaScript 编写的,开发者可以用这个组件在 Lisk 的区块链平台上构建应用。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210406222829369.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl
80OTUyNzMzNA==,size_16,color_FFFFFF,t_70)
SQL——结构化查询语言(Structured Query Language)或“Sequel”,是 IBM 开发的一种编程语言,用于与存储、查询和处理数据的数据库进行沟通。如今 SQL 约拥有 700 万名开发者。MySQL、PostgreSQL、SQL Server、DB2、Oracle 等主流数据库都使用 SQL 来开发应用程序。使用 SQL 的区块链项目有:
Aergo?是由区块链初创公司 Blocko 创造的一个面向企业的区块链解决方案,其所使用的 Coinstack 专利技术用的就是 SQL 智能合约。Aergo 区块链包含一个基于 SQL 的智能合约平台,这个平台可以让企业在商业环境中创造并执行高级智能合约。
C++是一款通用的编程语言,约拥有 440 万名开发者。C++最大的优点在于它不仅能够扩展资源密集型应用,而且还能让应用顺畅地运行,因此它已成为最受 3D 游戏开发者欢迎的一款编程语言。使用 C++的区块链项目有:
EOS——C++是 EOS 最主要使用的编程语言,其优点在于可以在区块链上灵活地运行大量的不同应用。EOS 还支持任何编译为 WebAssembly (WASM)的语言。
比特币核心钱包(Bitcoin Core)的网络也是用 C++编写的。
Golang 是一款基本上基于 C 语言语法的开源通用型编程语言,对开发者来说 Golang 很好学,测试者也能轻松理解。目前 Golang 大约拥有超过 80 万名开发者。使用 Golang 的联盟链网络(consortium network)有:
HyperLedger Fabric?——大部分链代码(用 HyperLedger Fabrics 构建的智能合约)都是用 Golang 编写的。他们还为区块链应用开发提供了一个 Java SDK。
如果您对区块链行业感兴趣,但愿这篇文章让您基本了解了从哪里开始以及什么需要深入研究。毋庸置疑,随着技术的进步和现实应用的出现,这个行业将在未来十几年内迎来爆炸式的发展。
读者福利
感谢你看到了这里!
我这边整理很多 2021 最新 Java 面试题(含答案)和 Java 学习笔记,如下图
评论