技术开发 频道

编程语言年度盘点:C语言不及新生代?

  【IT168 评论】看到最近的TIOBE排行榜,不仅让大批码农直呼心疼:C语言的人气指数大幅度下降。还记得,大学学的第一门编程语言就是C,用的教材是谭浩强编写的《C程序设计》,红色的书皮特别喜庆。2001年之前的C语言还稳居排行榜首位,自从Java占据首位之后,C语言的人气指数就开始逐渐下降。

编程语言年度盘点:C语言不及新生代?

  即便C语言在嵌入式计算与物联网领域十分适用,但TIOBE认为C语言复兴的可能性很低。首先,移动应用与Web开发行业的发展速度要远高于嵌入式及物联网;其次,C语言的背后缺少厂商的推动支持;最后,C语言虽然经常被很多人当做开启编程大门的敲门砖,但学好C语言的门槛还是不低的。

编程语言年度盘点:C语言不及新生代?

  不过,既然操作系统都用C语言,并且虽为底层,但C语言比汇编易读的多,效率也很高,短期内倒也不需要过多担心。那C语言到底如何不敌新生代力量的呢?年度最受欢迎编程语言又会花落谁家呢?在此之前,先来回顾一下前几年的年度编程语言:

编程语言年度盘点:C语言不及新生代?

  Java虽说稳坐第一宝座,并在去年荣获年度最受欢迎编程语言,但今年的境遇比C语言好不到哪去,身为90后的java远没有00后的GO语言受欢迎。

  截止到12月份的数据显示,Go语言可能再次成为本年度最大赢家(上图显示:上一次是2009年),同为增长指数大于1 ,而Groovy还没显出任何反超迹象。值得一提的是,Objective-C的增长幅度也接近1了,虽说苹果的重心在swift,但倒不影响Objective-C的人气,毕竟,Objective-C可是曾连续蝉联两届年度最受欢迎的编程语言。

  谷歌的这款Go语言当初问世时,曾因与C、C#等语言理念高度相似,不被外界看好。Go又称为Golang,是谷歌开发的一种静态强类型、编译型、并发型且具有垃圾回收功能的编程语言,编译后的Go代码运行速度与C语言非常接近,而且编译速度非常快。在学习曲线方面,Go与Java很类似,对于Java开发者来说,应该能够轻松学会Go。有了如此多市场占比庞大的编程语言做基础,Go的人气指数迅速攀升,也情有可原。Go语言有三个致命的缺点:没有官方包仓库,没有官方包管理工具,没有官方自动化构建套件。然后,民间各种百花齐放都出来了。

  云计算是未来的发展方向,Go语言的先进性便体现在此,不少云创公司选择将Go作为首要语言,云平台的计算方式受到欢迎,并发性操作系统受到程序员的青睐。据说,Go语言也在努力尝试机器学习,毕竟相比于Python,Go语言下开源的机器学习项目还是很匮乏的。

  其他闲言碎语

  与Go语言同属谷歌系的Dart近半年一直徘徊在20到30名之间,这是一个致力于帮助开发者打造复杂网页应用的现代化语言、库和工具。目前Dart有两种方式运行:一是在本地虚拟机上,二是将Dart代码转换成Javascript,直接在Javascript引擎上运行。不知道谷歌的目标是不是打算用Dart取代Javasript,反正Javascript的死忠粉绝对不会同意的。单从人气指数上看,Javascript比Dart高得多,稳居前十。

编程语言年度盘点:C语言不及新生代?

  以“世界上最快的语言”自居出道的Milk并未出现在TIOBE排行榜前50的榜单中,可见,大家似乎并不买账。而汇编语言自从今年下半年挤进前十之后,人气指数还在呈现上升趋势,果然汇编只是掉下去玩玩的。认真地讲,由于智能可穿戴设备的发展,仅能运行汇编语言的设备数量增加,汇编终于一改往日颓废之势。

编程语言年度盘点:C语言不及新生代?

  纵观近几年某些编程语言的排名变化,可以发现C语言确实是非常稳定的,其次是C++,而“世界上最好的语言”PHP变化也不大,Javascript和Java在2001年都有一个不小的跃进,而Lisp、Ada两门编程语言近几年的下跌趋势十分明显。

  结语

  排行榜对准备入编程一行的人来说,具备一定参考价值。但对资深程序员来讲,通常早已有了自己热衷与熟练的编程语言,程序员也不都是一样的,前端、后端、移动、网站,不同的分支所需的编程语言有不同的特性,对于整个公司来说,程序框架完成之后,很难在更改其编程语言。不过,对于开发者来说,可以适当了解编程语言的行业变化,时不时地学一两门充实自己。

0
相关文章