|
自由UK web顾问Craig Buckler从事多年编程语言统计,本文统计了来自GitHut、RedMonk等四个来源的语言排名情况。他表示语言的选择需根据自身的实际情况,学习一门最好可以帮你解决实际问题的语言。
以下为译文:
我从事编程语言统计很多年了,有大量的数据来源包括代码存储库、Q&A讨论、招聘广告、社交媒体情况、教程页面访问、学习视频视图、开发者调查等等。数据发表在不同的时间,都可以被认为是精确的,也可以被认为是有缺陷的,但是它们可以用于发现行业趋势。
GitHut
GitHut是一个相对较新的资源,据分析目前在GitHub中有220万活跃库,前十为:
JavaScript
Java
Python
CSS
PHP
Ruby
C++
C
Shell
C#
RedMonk
2015年RedMonk语言排名是通过对GitHub和StackOverflow活跃进行分析,研究结果为:
JavaScript
Java
PHP
Python
C#
C++
Ruby
CSS
C
Objective-C
Jobs Tractor
Jobs Tractor语言趋势分析了Twitter上成千上万个工作职位,2014年9月的最新数据如下:
Java
Objective-C
PHP
SQL
Java (Android)
C#
JavaScript
Python
Ruby
C++
TIOBE Index
TIOBE Index基于熟练工程师、课程以及搜索引擎的语言排名情况:
C
Java
C++
Objective-C
C#
JavaScript
PHP
Python
VisualBasic.NET
Visual Basic
完全不科学的调查
如果我们结合上面四个排名情况,可以得出下面这个结果:
Java (all)
JavaScript
PHP
Python
C / C++
C#
Objective-C
Ruby
Visual Basic
在这里我合并了C和C++,忽略了CSS和shell脚本。CSS并不是一种编程语言。shell脚本是无论你采用什么技术都对你有用的,不过如果你只会这个你将很难找到工作。
观测与警示
GitHut和RedMonk的结果很相似,不过这是可以预料到的。因为它们都是使用GitHub作为主要的数据来源。都是分析公共的存储库,这影响了结果指向开源技术。
TIOBE受搜索引擎资源的影响,这可能就是为什么C排名靠前的原因——该语言始于1959年,拥有许多历史文献。新语言不可避免的出现了排名靠后的情况,例如Ruby和Go。
教育资源可能会影响结果。例如Python是常用的学校和学习编程途径,成千上万的学生问问题和完成项目。不过根据我的经验来说,Python的工作相比PHP和Ruby来说是罕见的。Java也有类似的情况,因为它在教育、网络、桌面和移动发展上有各种各样的用途,所以它们的排名会相对靠前。
本地开发者的需求仍然很高,尤其是在相关工作的调查中可以看出。RedMonk报告Swift在不到六个月的时间里上升了46个排名达到第22位。然而应用开发是一门年轻的学科。目前有更多的Web和桌面编程职位空缺着。
最后,语言使用方面也有一个影响:
一个单一Web网站和应用需求大量的技术,这可能引发桌面语言排名靠前的情况;
你可以通过CSS、JavaScript、PHP、Ruby、Python或shell脚本快速的创建几行代码,但是通过C、C#、Objective-C和Java这类语言却不一定能够完成。
趋势
拿今天的图表来比对2014年来自RedMonk和JobsTractor数据,你会发现几乎没有什么改变,没有新进入或大飞跃进入前十的语言。
调查不会告诉你这些
没有最佳语言。
鲜有开发者会通过单一技术工作而富有。如果你考虑的是客户端JavaScript,当你没有充分了解HTML、CSS等等,你不会走的太远。你需要的越多,学习掌握的也就越多。
所以
调查很有趣,但不要拿你的事业作为赌注。记住:
仅基于调查数据或报酬前景来选择一门语言将会失败。
成为一个伟大的开发者有一个秘密:
放手去创建东西。
首先,发现一个问题——特别是对你有利益或有好处的。也许就是创建一个简历网站、组织你的财务状况或自动化你的家,无论是什么,确保目标是可以实现的。
然后选择一组合适的技术,或许有几个选择。但是不要试图去“强迫”某些语言:你可以在Perl中创建一个本地移动应用,但是资源是罕见的。
接下来创建解决方案:Google、代码示例和同道开发者都会对你有帮助,不过别期望它们可以提供所有问题的答案。你的项目是(或应该是)独特的程序,只有一个人能教你,那就是你自己。
最后,不要期望一夜之间就变成一个编码忍者。有些人有一种天然的能力,但也是花了很多很多时间来磨练他们的技能,不断的学习新的技术和技巧。
总之,学习一门最好可以帮你解决实际问题的语言。不要在意技术的过时,因为所有语言概念上的类似让你的技能是可转换的。不要担心你的选择——just build something!
免费领取LAMP兄弟连原创PHP视频教程光盘/《细说PHP》精要版,详情咨询官网客服:
http://www.lampbrother.net
PHPCMS二次开发http://yun.itxdl.cn/online/phpcms/index.php?u=5
微信开发 http://yun.itxdl.cn/online/weixin/index.php?u=5
移动互联网服务器端开发 http://yun.itxdl.cn/online/server/index.php?u=5
Javascript课程 http://yun.itxdl.cn/online/js/index.php?u=5
CTO训练营 http://yun.itxdl.cn/online/cto/index.php?u=5
|
0
0
相关文章
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。
705
2026.02.13
本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。
233
2026.02.13
本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。
117
2026.02.13
本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。
22
2026.02.13
本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。
61
2026.02.13
本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。
15
2026.02.12
本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。
669
2026.02.12
本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。
58
2026.02.12
热门下载
相关下载
精品课程
共23课时 | 3.7万人学习
共185课时 | 27.7万人学习
共41课时 | 8.1万人学习
最新文章

