整理 | 屠敏
出品 | CSDN(ID:CSDNnews)
有竞争才会有进步,在第四次工业革命到来之际,随着物联网、人工智能、自动化、区块链、XR 等技术的逐渐成熟,底层工具篇中的编程语言界发生了怎样的变化?真实情况究竟如何?
近日,一月一更的 TIOBE 编程社区为我们揭晓了最新编程语言的现状。
在伊始之际,需要注意的是,TIOBE 编程语言排行榜是编程语言流行趋势的一个指标,这份排行榜排名基于全球技术工程师、课程和第三方供应商的数量,其中包括了流行的搜索引擎以及技术社区,如 Google、Bing、百度、维基百科、YouTube、CSDN 等等。具体的计算方式详见:https://www.tiobe.com/tiobe-index/programming-languages-definition/。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。
这个排行榜可以用来考查你的编程技能是否与时俱进,也可以在开发新系统时作为一个语言选择依据。接下来,我们将与大家一同窥探 2 月 TIOBE 编程语言的趋势变化。
Objective-C 的退让真的成全了 Swift?
和上个月相比,本月编程语言排行榜的 Top 10 并无太明显的变化,逐渐形成铁打的 Java、C、Python、C++、C# 局面。
在此之后,Go 语言上升了三个名次,如今位列第 11 名。而近年来,Go 语言的迅速普及离不开 Google 的扶持,当然最主要的原因还是其作为一种轻量级的开源语言,能够很好地使用于云计算领域,也适合当今的微服务架构,由此受到开发者的广泛关注。
除此之外,令人颇为遗憾的是,编程语言 Objective-C 在本月 TIOBE 排行榜中陡降了 7 个名次,开始在 Top 20 的边缘疯狂试探。对此,TIOBE 编程社区官方剖析道,实际上,这种下降趋势所花费的时间比预期的要长得多。
早在 2014 年,苹果就宣布了新的编程语言 Swift 将成为 Objective-C 的后继产品。想当初,Objective-C 在 TIOBE 排行榜中还能挺进 Top 3,且该语言也在 iPhone 和 iPad 的移动应用程序开发中风生水起。但就在苹果的官宣公告发布后,Objective-C 的市场份额逐年递减,从 2014 年的占比 12% 下降到 2016 年的 1%。与之形成鲜明对比的是,Swift 从 1% 增长到 2%。至于其中的差额 10%,据统计,似乎被可用于多个移动平台的其他编程语言所侵蚀。
基于以上,TIOBE 官方表示,也许可以得出这样的结论:苹果通过用 Swift 直截了当地取代 Objective-C 似乎是一个错误,但对此广大的 iOS 程序员也别无他选。Objective-C 作为一种编程语言在一定程度上已经过时,这肯定需要苹果重新设计。对于苹果而言,较好的选择或许是逐步开发具有现代功能的 Objective-C。好比 Java、C ++ 和 C# 之类的语言通过在每个新发行版中进行小的更改而得以幸存。不会像现在一样,苹果通过这一举动失去了其编程语言市场份额的 10%。不过话虽如此,Swift 现在位于 TIOBE 排行榜的第 10 位。
其他编程语言排名
下面列出了完整的 21-50 名,因为是非官方发布的,所以可能存在遗漏:
第 51-100 名如下,由于它们之间的数值差异较小,仅以文本形式列出(按字母排序):
(Visual) FoxPro, Apex, ATLAS, Awk, Bash, bc, Bourne shell, C shell, cg, CL (OS/400), Clojure, Common Lisp, Crystal, cT, Curl, Elixir, Emacs Lisp, Forth, Hack, Icon, Inform, Io, J, JScript, Korn shell, Ladder Logic, Maple, MEL, Mercury, MQL4, NATURAL, OpenCL, Oz, PL/I, Programming Without Coding Technology, Prolog, Pure Data, Q, Raku, Red, Ring, S, Smalltalk, SPARK, Stata, Tcl, VBScript, Verilog, VHDL, WebAssembly
Top 10 编程语言 TIOBE 指数走势(2002-2019)
历史排名(1998-2019)
注:以下排名位次取决于 12 个月的平均值。
编程语言“名人榜”(2003-2018)
详细榜单信息可参考 TIOBE 官网:https://www.tiobe.com/tiobe-index
下面小编为大家推荐几本热门编程语言类好书,宅在家赶紧给自己充充电!
01
扫码了解详情并购买
《Big C++中文版(原书第3版)》
难度适中,适合自学。从C++繁杂的特性中进行精选,既涵盖大多数现代特性及程序设计的基本思想,又保持了适当的学习难度。
深入浅出,阐述透彻。对于一些难以理解的内容,结合文字、图片、代码及习题等多种方式进行讲解,所有代码均可免费下载。
实例学习,强调实战。共包含25个可运行的示例,通过实践帮助读者理解面向对象程序设计,从新手进阶为富有成效的程序员。
02
扫码了解详情并购买
《Python程序设计(原书第2版)》
本书介绍Python的基础知识,旨在帮助学生首先掌握概念,之后通过步骤完备的实例培养学生的问题求解能力。这一版采用Python3,并对全书结构进行了优化,既可作为门程序设计课的入门教材,也可供Python爱好者自学参考。
03
扫码了解详情并购买
《Go程序设计语言 》
本书由《C程序设计语言》的作者Kernighan和谷歌公司Go团队主管AlanDonovan联袂撰写,是学习Go语言程序设计指南。本书共13章,主要内容包括:Go的基础知识、基本结构、基本数据类型、复合数据类型、函数、方法、接口、goroutine、通道、共享变量的并发性、包、go工具、测试、反射等。本书适合作为计算机相关专业的教材,也可供Go语言爱好者阅读。
04
扫码了解详情并购买
《Effective Java中文版 原书第3版》
本书也是每个Java程序员必读的一本书,《Effective java》可以作为其他Java书籍的一个很好的补充,这本书提供了90个条目,每个条目中的规则都反映了最有经验的优秀程序员在实践中常用的一些有益的做法。
05
扫码了解详情并购买
《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》
这是一部从工作原理和工程实践两个维度深入剖析JVM的著作, 自2011年上市以来,前两个版本累计印刷36次,销量超过30万册,大厂面试最佳参考手册,进阶架构师必读、Java优化神书,这些标签成就了它成为原创计算机图书领域不可逾越的丰碑。
第3版在第2版的基础上做了重大修订,内容更丰富、实战性更强:根据新版JDK对内容进行了全方位的修订和升级,围绕新技术和生产实践新增逾10万字,包含近50%的全新内容,并对第2版中含糊、瑕疵和错误内容进行了修正。
06
扫码了解详情并购买
《Java并发编程的艺术》
阿里系和1号店资深技术专家撰写,Java并发编程领域的扛鼎之作,内容在InfoQ等社群得到高度认可。从JDK源码、JVM、CPU等多角度全面剖析和讲解Java并发编程的框架、原理和核心技术。
扫描下方二维码
10本好书一举拿下!
免费开放给大家
再次提醒大家:
少外出
戴口罩
勤洗手
拱手不握手~
你点的每一个在看,我认真当成了喜欢