TIOBE Index for January 2016(转载)
Java has won the TIOBE Index programming language award of the year. This is because Java has the largest increase in popularity in one year time (+5.94%). Java leaves runner ups Visual Basic.NET (+1.51%) and Python (+1.24%) far behind. At first sight, it might seem surprising that an old language like Java wins this award. Especially if you take into consideration that Java won the same award exactly 10 years ago. On second thought, Java is currently number one in the enterprise back-end market and number one in the still growing mobile application development market (Android). Moreover, Java has become a language that integrates modern language features such as lambda expressions and streams. The future looks bright for Java.
Java's rise goes hand in hand with Objective-C's decline (-5.88%). Apple's announcement to replace Objective-C by Swift some time ago was the main cause of this fall. It was expected that Swift would gain as much popularity as Objective-C left behind, but that doesn't appear to be the case. This is also observed in practice: TIOBE's customers are not eagerly migrating to Swift yet. Apart from Objective-C, PHP (-1.08%) and Oracle's PL/SQL (-1.00%) also lost ground in 2015. Other interesting changes are: Groovy (from #82 to #17), Erlang (from #89 to #35), Haskell (from #96 to #39) and Rust (from #126 to #47), whereas Go, Hack and Clojure are about to enter the top 50.
So what is the outlook for 2016? I expect that Java, PHP (with the new 7 release), JavaScript and Swift will be the top 10 winners for 2016. Scala might gain a permanent top 20 position, whereas Rust, Clojure, Julia and TypeScript will also move up considerably in the chart.
The TIOBE Programming Community index is an indicator of the popularity of programming languages. The index is updated once a month. The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings. It is important to note that the TIOBE index is not about the best programming language or the language in which most lines of code have been written.
The index can be used to check whether your programming skills are still up to date or to make a strategic decision about what programming language should be adopted when starting to build a new software system. The definition of the TIOBE index can be found here.
| Jan 2016 | Jan 2015 | Change | Programming Language | Ratings | Change |
|---|---|---|---|---|---|
| 1 | 2 | ![]() |
Java | 21.465% | +5.94% |
| 2 | 1 | ![]() |
C | 16.036% | -0.67% |
| 3 | 4 | ![]() |
C++ | 6.914% | +0.21% |
| 4 | 5 | ![]() |
C# | 4.707% | -0.34% |
| 5 | 8 | ![]() |
Python | 3.854% | +1.24% |
| 6 | 6 | PHP | 2.706% | -1.08% | |
| 7 | 16 | ![]() |
Visual Basic .NET | 2.582% | +1.51% |
| 8 | 7 | ![]() |
JavaScript | 2.565% | -0.71% |
| 9 | 14 | ![]() |
Assembly language | 2.095% | +0.92% |
| 10 | 15 | ![]() |
Ruby | 2.047% | +0.92% |
| 11 | 9 | ![]() |
Perl | 1.841% | -0.42% |
| 12 | 20 | ![]() |
Delphi/Object Pascal | 1.786% | +0.95% |
| 13 | 17 | ![]() |
Visual Basic | 1.684% | +0.61% |
| 14 | 25 | ![]() |
Swift | 1.363% | +0.62% |
| 15 | 11 | ![]() |
MATLAB | 1.228% | -0.16% |
| 16 | 30 | ![]() |
Pascal | 1.194% | +0.52% |
| 17 | 82 | ![]() |
Groovy | 1.182% | +1.07% |
| 18 | 3 | ![]() |
Objective-C | 1.074% | -5.88% |
| 19 | 18 | ![]() |
R | 1.054% | +0.01% |
| 20 | 10 | ![]() |
PL/SQL | 1.016% | -1.00% |
TIOBE Index for January 2016(转载)的更多相关文章
- TIOBE Index for December 2015(转载)
There is hardly any doubt about it, Java will become TIOBE's programming language of the year 2015. ...
- TIOBE Index for November 2015(转载)
原文地址:http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html November Headline: Java once a ...
- 2018年10月份编程语言排行榜(来自TIOBE Index for October 2018)
TIOBE Index for October 2018 from:https://www.tiobe.com/tiobe-index// October Headline: Swift is kno ...
- CREATE INDEX (Transact-SQL) 语法 (转载)
CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON <object> ( column [ ASC | D ...
- 转载nginx+uwsgi+django
Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.ng ...
- 【转载】C#中List集合使用Max()方法查找到最大值
在C#的List集合操作中,有时候需要查找到List集合中的最大值,此时可以使用List集合的扩展方法Max方法,Max方法有2种形式,一种是不带任何参数的形式,适用于一些值类型变量的List集合,另 ...
- 【转载】C#中List集合使用Min()方法查找到最小值
在C#的List集合操作中,有时候需要查找到List集合中的最小值,此时可以使用List集合的扩展方法Min方法,Min方法有2种形式,一种是不带任何参数的形式,适用于一些值类型变量的List集合,另 ...
- 【转载】C#中List集合使用Exists方法判断是否存在符合条件的元素对象
在C#的List集合操作中,有时候需要根据条件判断List集合中是否存在符合条件的元素对象,此时就可以使用List集合的扩展方法Exists方法来实现,Exists方法的签名为bool Exists( ...
- Python零基础学习系列之二--Python介绍及环境搭建
1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像P ...
随机推荐
- IE7下z-index混乱问题(转)
浏览器兼容性问题太让人蛋疼了,今天可是废在了IE7的z-index问题上.可又不能因为浏览器版本低而不去解决,毕竟要从用户的角度着想.百度了好多还是无法解决,最后google了一下,找到了方法. 直接 ...
- Spring面向切面之AOP深入探讨
Spring之AOP深入探讨 刚接触AOP之前我已经找了网上各种博客论坛上的关于AOP的文章利于我理解因为听好多人说AOP很复杂,很深奥当我接触之后发现根本不是那么的难于理解.它只是一个基于OOP技术 ...
- WIN32服务程序(三):完整的服务程序实例
前面我们所讲的“服务程序”,更准确地说是服务控制程序,例如我们通过输入应用的路径,将一个应用程序添加到服务控制管理器.一个服务控制程序可以将一个程序添加到服务控制管理器中,并控制它的运行.停止和删除等 ...
- EMV文档:接收到的ATR不在EMV规定范围,终端需要的操作
Required terminal behaviour in the event that a terminal receives characters outside the range allow ...
- TextRank 自动文摘
前不久做了有关自动文摘的学习,采用方法是TextRank算法,整理和大家分享. 一. 关于自动文摘 利用计算机将大量的文本进行处理,产生简洁.精炼内容的过程就是文本摘要,人们可通过阅读摘要来把握文本主 ...
- JavaBean学习总结(上)
一.何为JavaBean: 遵循特定规则的Java类,必须为共有类: 1. 需要对成员属性私有化: 2. 需要无参的构造函数: 3. 需要通过public方法将私有属性暴露给其他程序,且方法遵循一定命 ...
- sql指定插入自增长id的数据
SET IDENTITY_Insert [Tag.V2].[dbo].[Members_EnAccount] ON; insert into [Tag.V2].[dbo].[Members_EnAcc ...
- Angular.JS + Require.JS + angular-async-loader 来实现异步加载 angular 模块
传统的 angular 应用不支持异步加载模块,必须在 module 启动的时候,所有模块必须预加载进来. 通过使用 angular-async-loader 库,我们可以使用 requirejs 等 ...
- IOS Table中Cell的重用reuse机制分析
IOS Table中Cell的重用reuse机制分析 技术交流新QQ群:414971585 创建UITableViewController子类的实例后,IDE生成的代码中有如下段落: - (UITab ...
- Android 多线程处理之多线程用法大集合
handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...



