文档章节

编程语言这一年:Rust、Kotlin 上位,Python 横行,PHP……

编辑部的故事
 编辑部的故事
发布于 09/09 08:42
字数 4188
阅读 19642
收藏 53

作者:开源中国(OSCHINA)

内容来源:开源中国(OSCHINA)

最近开源中国(OSCHINA)在庆祝 11 周年生日,编辑部借着这个机会梳理了一下这一年来我们追过的那些开源界/开发界的热点新闻,算作一个阶段性小结。(其实只有 9 个月~)

开源中国是目前国内为数不多深耕于围绕“开源/自由软件”为开发者分享开源业内事、传播开源价值观的平台。目前社区收录的开源项目数量已经超过 50k,其中国产项目数量 10k+。

关于社区会发布哪些类型的新闻内容,开源中国的传统是:

  • 最核心的当然是开源相关的,比如开源项目的更新公告、各个开源社区的相关大事。
  • 知名开发工具的相关动态,包括各种 IDE、浏览器与各种协议/规范等。
  • 开发者强相关的大事件,比如 996。
  • 偶尔有一些泛 IT 界的能够引起开发者共鸣/思考的大事件,比如删库跑路。
  • ……

而这些内容来自开源中国官方编辑,也来自社区的用户 OSCer,借此也感谢 OSCer 们对开源中国社区的支持与维护。“@红薯 你起来啊,怎么就跪下了。”

今年这几个月下来,已经积累了庞大规模的内容,我们按不同方向整理成了数篇文章,接下来会陆续推出,这是第一篇,自然是从编程语言讲起。

OSCHINA 今年关注了什么之——编程语言

编程语言是开发者最亲密的工具,以针对编程语言的梳理作为开篇,似乎再合适不过了。

今年我们注意到了一些编程语言的巨大变化,不是一般的小打小闹,相反,持续发展下去它们极有可能完全改变当前的开发生态。

Rust

Rust 今年成为了微软的“新贵”。

微软表明其正在探索使用 Rust 编程语言作为 C、C++ 和其它语言的替代方案,以此来改善应用程序的安全状况。

微软认为 Rust 是目前业界采用的最佳选择,原因不仅是它能够以内存安全的方式编写系统级程序,还在于其精密性,“if it compiles, then it works”。

此外,Rust 还有其它优势让微软青睐:

  • Rust 静态地强制执行程序的许多属性,已经远超内存安全性,还包括空指针安全性和数据争用安全性(即没有来自两个或多个线程的一块内存的不同步访问)。
  • Rust 的丰富类型系统使编写富有表现力的程序成为可能。 具有相关数据的枚举和强大的 trait 系统等概念进一步强化了 Rust 的目标,即尽可能使程序无错误。
  • Rust 现有的社区对该语言有很大益处。虽然 Rust 仍然是一种年轻语言,但它拥有一个健康的生态系统,既能够促进开源社区发展强大,又能够支持生产用户。

本身语言层面的优势,现在加上微软生态大佬的扶持,我们有理由相信接下来 Rust 的发展应该是前途无量了。

关于 Rust 的发展趋势,还可以补充一点。有开发者询问 Linux 内核稳定版维护者 Greg Kroah-Hartman 是否接受使用 Rust 开发 Linux 内核驱动,Greg 回答在比 C 有优势的情况下可以作为可选项接受。

其它引起热议的相关内容:

Kotlin

Kotlin 与 Rust 一样,今年都强势上位。

在今年的 I/O 大会上,谷歌宣布“Kotlin First”,Kotlin 编程语言正式成为 Android 应用程序开发人员的首选语言,并且谷歌接下来的一些 Android 新特性将首先采用 Kotlin 实现。

仅仅几年时间,Kotlin 因其相比 Java 更安全与简洁等优越性,很快占领市场,谷歌 Android 首席布道师 Chet Haase 表示:“在过去的两年中,Kotlin 受欢迎程度一直在提高,超过 50% 的专业 Android 开发人员现在使用 Kotlin 开发他们的应用”。

从今年 Stack Overflow 年度开发者调查的数据中也能看到这一点:在开发者最喜爱的编程语言中,Kotlin 得到了 72.6% 的正面反馈。

虽然目前还处在早期阶段,但是相信随着 Kotlin 的进一步普及与谷歌公司在 Android 上的运营,Kotlin 在 Android 开发上采用率很快会超越 Java。

其它引起热议的相关内容:

PHP

“世界上最好的编程语言”,这一句虽然已经成为了程序员调侃的经典,但是不可否认,PHP 目前还是具有十分巨大的影响力。

虽然今年似乎没有多少 PHP 相关的重大正面事件发生,但是有开发者为我们详细分析了今天 PHP 是什么样子,这引起了社区的一阵喝彩:

  • PHP 正在积极开发,每年都会发布新版本
  • PHP 5 之后性能在不断提高
  • 有非常活跃的框架、包和平台组成的语言生态
  • PHP 在不断发展,过去几年中添加了许多新特性
  • 各种开发工具在过去几年中已经成熟,并且保持增长

结论是 PHP 早已不是十年前那门糟糕的语言

对许多开发者来说,PHP 目前是 Web 开发的绝佳选择,使用 PHP,可以创建可靠、可维护和高质量的应用,最终结果能够让人满意。

拿数据来说话。根据 5 月份专门调查 Web 技术、提供有关 Web 各种技术的使用情况信息的 W3Techs 提供的数据和报告,PHP 在 Web 开发领域是无出其右的。

针对全球网站服务器端所使用的编程语言进行统计,结果是有 79% 的网站都用到 PHP 开发,位居第一。而第二第三名的 ASP.NET 和 Java 占比分别为 11.3% 和 4.0%,似乎完全没有竞争力。

结合一年以来的历史趋势进行观察,PHP 在服务器端的使用占比也基本稳定在 79%。

调侃归调侃,PHP 的能力和影响力就摆在那里,至少它现在还没衰落,并且大有好转的迹象。

所以,世界上最好的编程语言是谁?

其它引起热议的相关内容:

Python

看一看今年各种编程语言排行榜吧,你会发现,Python 不仅是蟒蛇,还是条巨蟒,当前它正在疯狂吞噬其它语言的市场。

是的,Python 在各大编程语言榜单上都有明显且优异的成绩,在一些榜单中它现在已经将千年老大 Java 遥遥甩在了第二位。

以至于有人在分析:Perl 成为了过分炒作 Python 的牺牲品,以至于有人在思考:Python 是不是把 R 勒死了?

Perl 是一种高级、通用、直译式、动态的编程语言,它汲取了 C、sed、awk 与 Shell 脚本以及众多其它编程语言的特性,其中最重要的特性是内置正则表达式,以及强大的第三方代码库 CPAN(the Comprehensive Perl Archive Network,全面的 Perl 存档网络)。

Perl 可以运行在超过 100 种计算机平台上,适用性非常广泛,从大型机到便携设备、从快速原型创建到大规模可扩展开发都可以一把梭,除 CGI 以外,它还被用于图形编程、系统管理、网络编程、金融、生物以及其它领域。

要知道,被称为脚本语言中“瑞士军刀”的它,2005 年在 TIOBE 编程语言排行榜上曾坐过第三名的位置,当时指数超过 10%,而现在因为同类型语言 Python 的崛起(当然也有自身社区的原因),把它逼到了死角。在最近一次 TIOBE 榜单中,Perl 排到了 19 位,同时,开始单独统计的 Perl 6 仅排到了 93 位(Perl 6 与此前版本基本上可以算两种语言,这也是前边所说它自身的原因之一)。

R 的境遇与 Perl 差不多,都是在大家共同的战场上,被 Python 强势赶尽杀绝,现在成为被预言将会衰落的语言。

Python 的火热,其实也不是从今年开始的,但是今年有愈演愈烈的势头,同时,如果 AI、安全、大数据与云计算等领域不退火的话,Python 热估计还可以再演下去。但是话又说回来,这些目前非常具有实际意义的领域有什么理由退火呢?

其它引起热议的相关内容:

其它

除了前边过于显眼而单独拎出来简单分析的语言,其实其它语言也有相关的大动态。

微软推出新编程语言 Bosque,超越结构化程序设计

今年微软推出了一门全新的编程语言 Bosque,该语言参考了 TypeScript 的语法与类型,还有 ML 和 Node/JavaScript 的语义。作者微软计算机科学家 Mark Marron 致力于消除编程过程中出现的各种复杂情况,创造出了他认为超越主流结构化程序设计的 Bosque 这一语言。

安全的全新编程语言 V 发布首个可用版本

V 是一个集合了 Go 的简单和 Rust 的安全特性的新语言,其主要特性包括:

  • 快速编译(编译器只有 400kb,而且无第三方依赖)
  • 安全
  • C/C++ 转换

编程语言之父谈语言设计,龟叔大赞 TypeScript

四位编程语言创始人分别是:

  • Guido van Rossum,Python 作者
  • James Gosling,Java 作者和首席设计师
  • Anders Hejlsberg,Turbo Pascal 编译器的主要作者,Delphi、C# 和 TypeScript 开发者
  • Larry Wall,Perl 作者

TypeScript 官方决定全面采用 ESLint

不少用户认为 TypeScript 的 Linting 支持不足,因此负责 JavaScript 编辑体验的团队开始着手增加对 TSLint 和 ESLint 的支持。

微软宣布 SQL Server 2019 免费支持 Java

SQL loves Java.

以往 SQL Server 允许用户选择自己的 Java Runtime,通常是 OpenJDK 或 Oracle 的 Java SE。不过,这两种选择都会存在问题。对于 OpenJDK,需要技术支持的时候用户没法找到供应商;而使用 Oracle 的 Java SE,则会出现让 Oracle 帮助用户在 Microsoft SQL Server 中使用 Java 的情况,这对于微软来说有点尴尬。

微软为 Java 开发者推出 VSCode 安装程序

不到 1 分钟即可在 Visual Studio Code 中使用 Java 编写和运行 Hello World 程序

谈判失败:Oracle 杀死 Java EE

Oracle 与 Eclipse 基金会之间关于 Java 商标谈判的结果:双方的谈判最后以失败告终,Oracle 拒绝出让 Java 商标。

F# 换“山头”啦!现已迁移到 .NET 名下

F# 的名字和品牌本身就有一段奇怪的历史。将时钟拨会 2015 年,当时 F# 有两个身份:一个是 Visual F#(或叫做 “VisualFSharp”),属于 Visual Studio 中的产品,包含可在 Windows 上使用的编译器和工具;另一个是 F#(或叫做 FSharp),这是一门独立的语言,可以独立于微软构建 F# 工具、库生态系统和软件包。这种“双重性”的身份十分令人困惑。

微软宣布 .NET 5 计划,支持跨平台、移动开发

.NET Core 3.0 之后的下一个版本将是 .NET 5。整合 .NET Core 与 .NET Framework,未来只会有一个 .NET,能够使用它来开发 Windows、Linux、macOS、iOS、Android、tvOS、watchOS 与 WebAssembly 等。

13 岁女学生被捕:因发布 JavaScript 无限循环代码

Golang 到底姓什么?开发者想移除谷歌 logo

关于 Golang 姓谷歌这一观点,一方面是由于 Go 核心团队的大部分成员都是谷歌的员工,如果他们不离开谷歌,不去积极确立 Go 语言未来的发展方向,那很难说 Go 不是谷歌的;另一方面,谷歌公司真的为 Go 付出了一些东西,比如提供了大量的基础设施和资源,如域名 golang.org。

Go 语言团队否决关于"try"语句的提案

排行榜

常规的几大知名编程语言排行榜或多或少已经反映了上边提到的编程语言的趋势,比如,自从谷歌宣布 Kotlin 成为开发 Android 的一级语言,Kotlin 在当月各个榜单中指数就迅速上涨;Java 在 Python 的猛烈攻势下,逐渐退居老二。

排行榜列在这里,有兴趣也可以分别回顾一下:

 

 

小结

编程语言还会持续地发展下去,编程语言之争也不会停歇。

当下哪个语言最厉害?不同开发者会有不同的看法,而且多半陷入偏激的论战。事实是目前还没有哪个语言是可以通吃所有领域的,每个出色的语言只有在自己最擅长的领域里才称为出色。所以讨论哪个语言最好,也要遵守“基本法”,求求你们先限定一下范围,这样可以少去许多无意义的口水战。

最后根据江湖规矩,这种场合一定得说一句:PHP 是……

不不不,一定得说一句:开源中国生日快乐!

© 著作权归作者所有

编辑部的故事

编辑部的故事

粉丝 1434
博文 263
码字总数 507562
作品 0
深圳
运营/编辑
私信 提问
加载中

评论(30)

Newthinks
Newthinks
Php 在WEB上应用这么多啊
MudHorse_i386
MudHorse_i386
PHP是世界上最好的语言
开源中国首席罗纳尔多
开源中国首席罗纳尔多
java什么时候可以写底层、内核
不愿透露姓名的Mr成
不愿透露姓名的Mr成
那不是他擅长的领域
张亦俊
张亦俊
明眼人都知道,kotlin是政治斗争的结果,但我等P民就是无可奈何
橙汁儿
橙汁儿
世界的p民都无可奈何
kakai
kakai
最早应该是商业竞争吧,google和oracle就java问题不止闹过一次,android因java而起,google也想逐步摆脱java而免受oracle专利限制。政治斗争可能也有,华为方舟的释出和开源,让google存在危机感,加快为kotlin正名应该是其必然动作。
华初
华初
6
fengguo60
fengguo60
作为技术老人都会明白,所有语言都是坑,而所谓专家就是善于填坑。
Vae_
Vae_
kotlin 牛逼
一大口硫酸
一大口硫酸
无论怎么吹,在国内互联网领域,java的大佬地位无可撼动
娶不起赛丽亚了
娶不起赛丽亚了
js可以写前端,可以写后端,可以写桌面应用,可以......反正js最牛逼👍
基泥钛镁
基泥钛镁
css天下无敌,哈哈哈哈哈哈哈哈哈:trollface:
Rwing
Rwing
osc 是鉴定的.NET黑啊,这一年.NET那么多新闻,都被吃了?
局长
局长
楼主是鉴定的 osc 黑啊
TIOBE 3 月排行榜:Ruby 重回前十,Kotlin 突围

TIOBE 刚刚发布了 3 月编程语言排行榜。 Ruby 曾获得 2006 年 TIOBE “年度编程语言” ,并在 2008 年达到了热度巅峰,但之后就被新语言抢去了光芒,人气大幅下滑。但现在似乎正在重新受到关...

王练
2018/03/08
9.6K
43
Stack Overflow 调查显示:Rust 是最受欢迎的编程语言

开发者问答网站 Stack Overflow 对程序员社区展开了年度调查,调查显示的结果刚刚公布。 JavaScript 仍然是专业开发人员中使用最广泛的编程语言,这使得这六年间成为 Web 开发语言的巅峰,其...

周其
2018/03/15
5.1K
24
2018 程序员大调查,哪些技术和人才最值钱?

Stack OverFlow 2018年开发者调查报告已经是Stack OverFlow第八年发布这样的报告了,这次报告也是受访者最多的一年,据悉有超过10万名的程序员接受了调查。 1.哪些人才最受市场青睐? Stack O...

达尔文
2018/03/24
4K
13
RedMonk 2018年6月编程语言排行:Objective-C 升至第九

美国当地时间8月10日,RedMonk 宣布推出 2018 年 6 月(Q3 季度)RedMonk 编程语言排名,下面让我们看看这份姗姗来迟的编程语言报告带来了哪些消息。 开始之前,我们先来了解一下关于 RedMon...

局长
2018/08/13
5.6K
9
【一周】微软霸道刷屏:Rust、Python、TypeScript、VS、SQL Server……

回顾一周社区热门资讯 第【三十三】期:20190720-20190726 文末有福利 点击相应标题,跳转阅读全文。 TiKV 3.0 GA 发布,分布式事务键值数据库 TiKV 是一个开源、统一分布式存储层,支持功能...

h4cd
07/27
17.8K
19

没有更多内容

加载失败,请刷新页面

加载更多

还为PDF转Word抓狂?以下神器让你在职场倍受欢迎!

身在职场的你,是否一直在琢磨:如何能让自己在公司更受欢迎?如何才能在办公室里混个好人缘?如何在同事圈里留个好印象?其实,想要让自己成为受欢迎的人,只要让自己成为大家需要的人不就行...

foxit2world
27分钟前
7
0
AndServer+Service打造Android服务器实现so文件调用

so 文件调用 随着 Android 移动安全的高速发展,不管是为了执行效率还是程序的安全性等,关键代码下沉 native 层已成为基本操作。 native 层的开发就是通指的 JNI/NDK 开发,通过 JNI 可以实...

夜幕NightTeam
28分钟前
4
0
Docker下kafka学习三部曲之二:本地环境搭建

在上一章《 Docker下kafka学习,三部曲之一:极速体验kafka》中我们快速体验了kafka的消息分发和订阅功能,但是对环境搭建的印象仅仅是执行了几个命令和脚本,本章我们通过实战来学习如何编写...

程序员欣宸
29分钟前
4
0
萌新推荐!不再为Excel转换PDF发愁,Aspose.Cells for .NET一步到位!

Aspose.Cells for .NET(点击下载)是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。 将Excel工作簿转换为...

mnrssj
30分钟前
6
0
对于绘画小白怎么画制服?该注意什么?

怎样制作学生服装?想必绘画初学者们常常会想的问题吧,不知道怎样才能画好人物的衣服,别着急,今日就在这儿讲一些关于如何绘画学生衣服校服的教程给我们!期望能够帮到你们! 轻便西装是不...

热爱画画的我
35分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部