搜索
首页头条当编程语言掌握在企业手中,是生机还是危机?

2019 年 4 月,Java 8 收费时代到来了!2019 年 1 月份,Oracle 宣布将停止 Java 8 更新的免费支持,未来 Java 的更新只适用于已付费的许可证持有者。近日,Oracle 发送邮件通知用户 Java 8 第一次、收费的季度重大修补更新将在 4 月 16 号发布。

6aef56731300b772c058b764e496c97.png

行业分析公司 Redmonk 于近日发布了 2019 年第一季度编程语言排行榜,排在前十位的分别是 JavaScript、Java、Python、PHP、C#、C++、CSS、Ruby、C 和 Objective-C。RedMonk 编程语言排行榜一年发布两次,其主要依据编程语言在 GitHub 和 Stack Overflow 上的代码使用情况与讨论数量,经过统计分析后排序得出编程语言在未来的采用趋势。

相信很多人在看到 RedMonk 的排行榜时都会有小小的疑惑,这和之前 TIOBE 发布的编程语言排行榜有点不同。TIOBE 发布的 3 月编程语言 Top 10 分别为:Java、C、Python、Visual Basic .NET、C#、JavaScript、PHP、SQL 和 Objective-C。

5d833c4b503aa9f418bdeb8e30c6c36.png

当编程语言掌握在企业手中,是生机还是危机?

但是,如果仔细对比这两份编程语言排行榜就会发现它们的 Top10 中有 7 个编程语言是相同,只是排名略有不同。事实上,编程语言的头部竞争一直都比较平稳,RedMonk 的 Top 5 玩家 JavaScript、Java、PHP、Python 和 C#,自 2014 年开始就没有变过,就连排位顺序也只是出现过几次很小的变动。

除去头部玩家,把观察范围扩大到编程语言 Top 20 中,大家还会发现一个更有趣的现象,那就是上升速度很快的编程语言背后都有公司支持。以 RedMonk 榜单为例,我们来看看这些“有背景”的编程语言:

• 排在第 10 位的 Objecr-C:Object-C 最初是由 Brad Cox 和 Tom Love 开发的,但是后来被 Apple“收编”了。

• 排在第 11 位的 Swift:Swift 是 Apple 2014 年发布的新开发语言,易学易用。

• 排在第 12 位的 TypeScript:TypeScript 最初是微软的一个内部项目,2014 年微软正式发布该语言。

• 排在第 15 位的 Go:Go 是由 Google 员工 Robert Griesemer、Rob Pike 和 Ken Thompson 于 2007 年开发的,2009 年开源,并快速成为了构建云应用程序的核心语言。

• 排在第 20 位的 Kotlin:Kotlin 最初是由 JetBrains 开发的,2017 年被 Google“收编”用于 Android 开发。

其实,早前的 Web 语言基本是由黑客个人编写的,例如 PHP 是 Rasmus Lerdorf 编写的, Python 是 Guido Van Rossum 编写的。20 世纪 90 年代末是互联网发展的黄金时代,当时涌现出的大量草根项目和小型项目都在后来发展称了大型项目。以编程语言为例,当时人们不再使用 C 语言来构建 CGI Web 应用,而是在积极采用 PHP、JavaScript 等其它语言。

“C++ 之父” Bjarne Stroustrup 在攻读博士学位时就开始研究 C++,然而直到 1983 年,他才在 AT&T 使用了 C++,他在回忆这段经历时表示:

我在开发 C++ 时,AT&T 其实正面临着困境,AT&T 构建的系统比大多数组织要更复杂,可靠性要求更高,所以我们必须自己来影响市场,制定满足我们自己需求的标准,否则的话,我们将没有工具来构建系统。在我开发 C++ 之前,Ken Thompson 和 Dennis Ritchie 已经开发了 Unix 和 C。AT&T 可能是世界上最大的软件工具的“民用用户”,我们使用了更为广泛的系统:从最小的嵌入式处理器到最大的超级计算机和数据处理系统。所以,我们当时的想法就是这个语言要尽可能多的适用于这些技术文化和平台。通用性至关重要,专有特性会被视为限制平台和供应商的选择。因此,AT&T 无论是过去,还是现在,一直都是是正式标准的主要支持者(例如,ISO C、ISO C++)。换句话说,AT&T 通过推动 C++ 来成为行业标准,而 C++ 也通过 AT&T 从一个博士生心血来潮的作品成为了一个行业规范。

但是当时间行进至 21 世纪,这种情况就发生了变化。如果说“互联网 +”初期是惠及了民众,那么当下一波浪潮移动应用到来时,主导者就变成了企业。语言规则主要由 Google、Apple 和 Microsoft 主导。

很多新出现的语言一开始就是由企业赞助的,例如 Microsoft 的 CNo,这些新的编程语言汲取了过去的经验教训,在默认情况下,每种新语言都是开源的,也不会再有一家企业试图用专有语言来构建专有程序的情况了。当然,也有一些最初由黑客开发的语言被企业“收编”,例如 Object-C。

在这一时期,网络和应用程序的未来大部分是建立在企业的现金上,而不是基于社区动力。那么,这种情况是好是坏呢?

从上文中不难看出,当下流行的编程语言中有很大一部分背后是有企业投资的。企业投资的好处是资金充裕,编程语言能够持续稳定的发展,不会突然夭折。但是也有弊端,就是企业可能会从中获取利润,例如 Swift,每有一个使用 Swift 构建的应用程序,App 就会从中 30% 的费用。

更为恐怖的是,企业主导编程语言有可能会导致生态系统锁定,而开源编程语言则是形成这种锁定的重要环节。一旦企业的生态系统和应用程序重度依赖于某种编程语言,且无法轻易被替换时,那么就很可能会被该编程语言背后的公司牵着鼻子走,就像之前 Oracle 在数据库领域的“厂商锁定”和 IBM 在大机领域的“厂商锁定”。

编程语言的“厂商锁定”并不是远在天边,就在不久之后,Java 8 更新就要开始收费了!2019 年 1 月份,Oracle 宣布将停止 Java 8 更新的免费支持,未来 Java 的更新只适用于已付费的许可证持有者,无有效许可证的用户不能将 Java 8 的安全更新应用于商业用途。

当编程语言掌握在企业手中,是生机还是危机?

0f9f4a0c1cebee3ac410f4610766327.png

(图源网络,Oracle 发给用户的关于 Java 8 收费的提醒邮件)

从 2019 年 4 月起,Oracle 会每季度发布一次 Java 8 的重大修补更新,非公开的首次重大修补更新将于 4 月 16 日发布。在很多企业应用中,Java 8 仍是主力,相信 Oracle 这次的收费举动,会对众多企业产生影响。

声明
本文转载于:InfoQ。如有侵权,请联系admin@php.cn删除
如何知道 Windows 上是否安装了 PHP?如何知道 Windows 上是否安装了 PHP?May 01, 2023 pm 09:31 PM

如何在Windows10或11上检查PHP版本在学习本教程之前,请确保已在您的Windows系统上正确配置PHP。除此之外,您还需要一个命令提示符或终端访问权限。使用命令提示符或Powershell检查PHP版本识别已安装的PHP版本的最好和最简单的方法是使用其命令行工具。但是,要使用,用户必须有权访问Windows命令行应用程序,如CMD。转到Windows10或11搜索框并键入CMD或Powershell。您可以使用其中任何一个。当图标出现在这些

Web 开发 FastAPI、Flask 和 Streamlit 的比较Web 开发 FastAPI、Flask 和 Streamlit 的比较Apr 09, 2023 am 11:51 AM

Python 已成为最流行的 Web 开发编程语言之一,这要归功于它的简单性、多功能性以及大量的库和框架集合。在使用 Python 构建 Web 应用程序时,开发人员有多种选择,从 Django 和 Pyramid 等全栈框架到 Flask 和 FastAPI 等轻量级微框架,再到用于数据科学应用程序的 Streamlit 等专用工具。在本文中,我们将比较三种最流行的 Python Web 框架——FastAPI、Flask 和 Streamlit——以帮助您为项目选择合适的工具。我们将探讨每个

基于Taichi的Python高性能计算入门指南基于Taichi的Python高性能计算入门指南Apr 12, 2023 am 08:46 AM

自从Python编程语言诞生以来,它的核心理念一直是最大限度地提高代码的可读性和简单性。Python对可读性和简单性的追求简直达到了如痴如狂的境地。一个事实即可证实这一点:只要你在Python系统的根目录中输入命令“import this”后按下回车键,竟然马上打印出一首英文小诗,翻译成中文大致意思是:“美丽胜过丑陋,显式优于隐式。简单比复杂好,复杂比繁杂好。扁平优于嵌套,稀疏胜过密集。可读性很重要……”简单总比复杂好,可读性很重要。毫无疑问,Python确实在实现这些目标方面非常成功:它是迄今

如何在 Windows 10 上使用命令提示符安装 PHP如何在 Windows 10 上使用命令提示符安装 PHPMay 08, 2023 pm 05:13 PM

使用命令提示符或PowerShell在Windows上安装PHP安装ChocolateyChoco包管理器我尝试了Windows默认包管理器Winget,但无法通过它安装PHP。因此,剩下的另一个最佳选择是使用流行的Chocolatey包管理器。但与Winget不同的是,Choco默认情况下不存在于我们的Windows系统中,因此我们需要在我们的系统上手动安装它。转到您的Windows10或11搜索框并键入CMD,出现时选择“以管理员身份运行”将给定的命令复制

html和css算编程语言吗html和css算编程语言吗Sep 21, 2022 pm 04:09 PM

不算。html是一种用来告知浏览器如何组织页面的标记语言,而CSS是一种用来表现HTML或XML等文件样式的样式设计语言;html和css不具备很强的逻辑性和流程控制功能,缺乏灵活性,且html和css不能按照人类的设计对一件工作进行重复的循环,直至得到让人类满意的答案。

在 Windows 11 或 10 上安装最新 Python 的 2 种方法——GUI 和 CMD在 Windows 11 或 10 上安装最新 Python 的 2 种方法——GUI 和 CMDApr 13, 2023 pm 11:31 PM

在 Windows 10 或 11 上安装 Python 3在这里,我们讨论两种设置 Python 的方法,一种是使用图形安装向导,另一种是借助提示符或 Powershell(终端)中的命令。使用图形用户界面:1.下载Python最新版本众所周知,默认情况下,Windows 中不包含 Python 来编译我们基于它的程序。因此,请访问官方网站python.org ,通过单击“下

Python Web3 开发:用 Brownie 部署智能合约Python Web3 开发:用 Brownie 部署智能合约May 19, 2023 pm 05:34 PM

Python是最通用的编程语言之一:从研究人员运行他们的测试模型到开发人员在繁重的生产环境中使用它,几乎在每个可能的技术领域都有使用案例。在今天的指南中,我们将了解Brownie,一个基于Python的工具,用于编写和部署智能合约。准备安装Python3以太坊节点文本编辑器终端什么是Brownie?智能合约开发主要由基于JavaScript的库主导,如web3.js、ethers.js、Truffle和Hardhat。Python是一种通用的、高度使用的语言,也可用于智能合约/web3的开

30 个数据工程必备的Python 包30 个数据工程必备的Python 包Apr 12, 2023 pm 04:58 PM

Python 可以说是最容易入门的编程语言,在numpy,scipy等基础包的帮助下,对于数据的处理和机器学习来说Python可以说是目前最好的语言,在各位大佬和热心贡献者的帮助下Python拥有一个庞大的社区支持技术发展,开发两个各种 Python 包来帮助数据人员的工作。在本文中,将介绍一些非常独特的并且好用的 Python 包,它们可以在许多方面帮助你构建数据的工作流。1、KnockknockKnockknock是一个简单的Python包,它会在机器学习模型训练结束或崩溃时通知您。我们可以

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器