编程语言 – 庄闲棋牌官网官方版 -199IT
//www.otias-ub.com 发现数据的价值-199IT Fri, 15 Nov 2024 01:00:48 +0000 zh-CN hourly 1 https://wordpress.org/?v=5.4.2 TIOBE:2024年11月编程语言排行榜 Go排名第7创新高
//www.otias-ub.com/archives/1727003.html Fri, 15 Nov 2024 01:00:48 +0000 //www.otias-ub.com/?p=1727003 TIOBE发布了最新的2024年11月的编程语言排行榜,Go语言在TIOBE指数中的排名不断上升,本月排名已经提升至第7,创下该语言的历史新高。TIOBE CEO Paul Jansen点评称,Go在前十名中独树一帜的原因在于,Go程序部署快速、简单,同时该语言易于学习。

而Python易学但速度不快,并且由于依赖于环境中的各种版本库,大型Python程序的部署非常脆弱。

如果与Rust相比,Go的速度稍慢,但Go程序更容易理解,他指出Go在TIOBE指数中的下一个拦路虎是排名第6的JavaScript。

不过对于大型JavaScript系统而言,现在很多在向TypeScript转变,如果每年的趋势都这样发展下去,Go将在3年内超越JavaScript。

TIOBE指数是通过分析全球范围内的工程师、课程和第三方供应商的数据,以及来自Google、必应、雅虎、维基百科、亚马逊、YouTube和百度等流行搜索引擎的搜索数据来计算得出的。

需要注意的是,TIOBE指数只是反映某个编程语言的热门程度,并不能说明一门编程语言好坏,也不能说明语言所编写的代码数量多少。

自 快科技

]]>
TIOBE:2024年10月编程语言排行榜 Python占据了21.90%的市场份额
//www.otias-ub.com/archives/1722175.html Thu, 17 Oct 2024 12:32:11 +0000 //www.otias-ub.com/?p=1722175

编程语言与最新的技术进步保持同步。 尽管数百万人仍在继续使用老式编程语言,但现代编程语言正在以更高效的方式管理和处理数据,尤其是在人工智能日益发展的今天。TIOBE 指数的最新更新揭示了软件开发领域的显著变化。 虽然传统编程语言依然流行,但许多开发人员正在寻求能够处理大量现代数字数据的技术。 C、COBOL、Fortran 和汇编等传统语言仍然占有一席之地,但它们已不再占据中心位置。

TIOBE 指数是由荷兰公司 TIOBE Software BV 维护的衡量编程语言受欢迎程度的月度指标,其”受欢迎程度”数据来自 20 多个网站的搜索结果,包括Google、亚马逊、维基百科和必应。

2024 年 10 月,Python 继续蝉联最受欢迎编程语言的宝座,在过去一个月中增长了 +7.08%,占据了 21.90% 的市场份额。 C++ 以 11.60% 的市场份额位居第二,Java 以 10.51% 的市场份额紧随其后。 然而,经典的 C 语言正在失去市场,目前以 8.38% 的市场份额排名第四,下降了 3.70%。

TIOBE Software 首席执行官 Paul Jansen 表示,当今科技世界的数字数据量正以前所未有的速度增长,这促使人们对能够高效处理和操作这些数据的工具的需求不断增加。 程序员现在需要的是能够出色处理大量比特和字节、执行复杂计算并提供高性能的语言。

Jansen说,Python 易学且安全,但速度不够快。 因此,软件工程师们正在”疯狂地”寻找更强大的替代品。 C++ 可以作为候选,但在内存管理任务方面不够安全。 Rust 是一种有趣的新语言,尽管它并不容易学习,但正在迅速跻身 TIOBE 指数前十名。

Mojo是一种编程语言,由Chris Lattner于2023年创建,于2024年10月首次进入TIOBE指数。 Jansen 将 Mojo 描述为 Python 和 Swift 的混合体,具有更快的性能。 目前,Mojo 以 0.15% 的份额排名第 49 位,特别适合在 GPU 等人工智能硬件上进行底层编程,而无需使用 NVIDIA 专有的 CUDA API 进行并行计算。

自 中文业界资讯站

]]>
David Gewirtz:数据显示最受欢迎的编程语言前三名为Python、JavaScript和Java
//www.otias-ub.com/archives/1716594.html Wed, 04 Sep 2024 12:58:43 +0000 //www.otias-ub.com/?p=1716594 学习一门编程语言可能很棘手,尤其是对于编程新手来说。不过,了解最流行的语言可能有助于某些人做出关键决定。这一选择可能会决定是找到工作还是被淘汰。学习编程一直是在科技领域立足的热门途径之一。网络开发、数据科学,尤其是人工智能推动了人们对软件工程领域的兴趣。然而,尽管编程语言多达数百种,但有几种语言却深受业界青睐。

学习一门编程语言可能很棘手,尤其是对于编程新手来说。不过,了解最流行的语言可能有助于某些人做出关键决定。这一选择可能会决定是找到工作还是被淘汰。学习编程一直是在科技领域立足的热门途径之一。网络开发、数据 科学,尤其是人工智能推动了人们对 软件工程领域的兴趣。然而,尽管编程语言多达数百种,但有几种语言却深受业界青睐。

ZDNet 高级编辑 David Gewirtz 尝试汇总来自九个来源的数据,以确定哪些编程语言最受欢迎,从而最有可能引起新手的兴趣。他的文章值得一读,以下是他的方法概述。

格维茨借鉴了政治分析的方法,汇总了各种排名的调查数据。只使用一两个来源的数据可能会产生偏差,因此他希望做到公平。例如,只使用面向电气工程师的组织 IEEE 的数据,就会使结果偏向于有利于该专业的语言。

设计流行编程语言列表的另一个问题是确定什么是流行语言。Gewirtz 概述了几个因素,如Google趋势上的列表、有关该语言的书籍数量以及该语言的招聘列表数量。尤其是后者,对于学习编程的人(甚至是想转换工作重心的资深程序员)来说可能更有说服力。

为了使排名尽可能公平,Gewirtz 使用了五个组织的九个指数来获取数据,然后从每个指数中选出前 20 种语言:

  • PYPL(编程语言流行指数)
  • Tiobe
  • GitHub USage 2023
  • Stack Overflow 专业开发人员
  • Stack Overflow 学习代码
  • Stack Overflow 其他编程人员
  • IEEE Spectrum 索引
  • IEEE 工作索引
  • IEEE 趋势

在此基础上,他选取了至少五个指数中提到的语言,绘制了上图。虽然一目了然地看到每个指数中的流行语言很有帮助,但 Gewirtz 指出,这并不能提供任何背景信息,让你知道学习的重点在哪里。为了解决这个问题,他做了一个简单的数据分析,并根据每种语言在图表中的频率和位置对每种语言进行了加权。最终得出了以下流行指数。

Gewirtz 的图表显示,Python、JavaScript 和 Java 位居前三位,考虑到机器学习、数据 科学和网络开发的流行,这也是合情合理的。

值得注意的是,移动开发在榜单中的排名非常靠后。智能 手机可以说是最流行的计算机,但 Kotlin(Android)、Dart(Android/iOS)和 Swift(苹果产品)却是最不流行的语言。这一排名可能与 Meta 的跨平台移动开发框架 React Native 有关,React Native 是一种流行的移动开发平台,使用的是更流行的 JavaScript 和 TypeScript 语言。

虽然这个实验很有启发性,但学习哪种编程语言取决于任务。虽然从技术上讲,你可以用 Swift 编写整个 Windows 应用程序(如Arc 浏览器),但使用 C# 可能会更好。COBOL 和 Fortran是 Gewirtz 甚至没有考虑过的另一种选择。虽然这些语言已经过时,但仍广泛应用于商业应用中,程序员虽然稀少,但工资却很高。

选择编程语言的最佳建议是,首先弄清楚自己想做什么,然后选择最适合该职业的语言。

自 中文业界资讯站

]]>
DevJobsScanner:2023年薪酬最高10种编程语言出炉 Solidity以137万年薪位居第一
//www.otias-ub.com/archives/1660901.html Wed, 15 Nov 2023 12:17:01 +0000 //www.otias-ub.com/?p=1660901

研究公司DevJobsScanner近日在其网站发布了2023年度(2022年10月1日到2023年10月1日),薪酬最高的10种编程语言排行。在其调研的1000万个开发工作岗位中,有130万个岗位显示有工资,其中又有23万个岗位属于编程语言类,在这23万个岗位中约有8.6万个岗位来自美国。

具体排行为:

10-Java

Java在薪酬排行中位列第十,该网站表示,Java 的工作机会大多要求份非常丰富的经验,Spring等Java框架是该行业的高薪职位。

其平均年薪为11.8万美元(约合86万元人民币),岗位数量(带薪水)为23000个。

9-Python

Python是当今最流行的语言之一,也是排名第九的高薪职位,调查结果显示,虽然其年薪为12.5万美元,但有些岗位年薪还是达到了50万美元。

其平均年薪为12.5万美元(约合91.1万元人民币),岗位数量(带薪水)为14000个。

8-Swift

Swift是苹果公司开发的一种编程语言,主要用来开发iOS和Mac应用程序。

其平均年薪为12.7万美元(约合92.5万元人民币),岗位数量(带薪水)为174个。

7-Go

Go语言由谷歌团队于2007年推出,一直广受欢迎,主要特点是简单易用,可以快速完成工作。

其平均年薪为13万美元(约合94.7万元人民币),岗位数量(带薪水)为1200个。

6-Ruby

Ruby语言主要应用于Web 开发,虽然有多年历史单仍然很流行,而且其需求相当高,大部分还都是高薪。

其平均年薪为13.2万美元(约合96.2万元人民币),岗位数量(带薪水)为3400个。

5-Scala

Scala是一种结合了面向对象和函数式编程的高级语言,可以编译为Java字节码并在Java虚拟机(JVM)上运行。

其平均年薪为13.5万美元(约合98.4万元人民币),岗位数量(带薪水)为533个。

4-C/C++

C++的应用范围十分广泛,游戏、服务器、数据库、空间探测器等许多领域都可以找到C++的身影,庄闲网络娱乐平台进入 生态系统中也大量使用了C++。

其平均年薪为13.6万美元(约合99.1万元人民币),岗位数量(带薪水)为3000个。

3-ABAP

ABAP是2023年企业资源计划(ERP)生态系统中最有价值的语言之一,其一直是SAP应用的支柱,允许自定义开发和修改SAP应用程序。

其平均年薪为13.7万美元(约合99.9万元人民币),岗位数量(带薪水)为134个。

2-Rust

Rust语言的薪资和受欢迎程度都在持续上升,其与C++类似,但具有安全并发等更高级的功能,使其成为高性能大型应用程序的完美选择。

其平均年薪为15.6万美元(约合113.7万元人民币),岗位数量(带薪水)为197个。

1-Solidity

位居2023年薪资排行榜首的是Solidity,是一种面向合约的高级编程语言,主要用于编写庄闲网络娱乐平台进入 网络上的智能合约,目前使用该语言的人数较少,从而导致薪酬直线上升。

其平均年薪为18.8万美元(约合137万元人民币),岗位数量(带薪水)为136个。

需要注意的是,为了减少由于地区差异导致的数据偏差,该网站仅调研了来自美国的职位。

自 快科技

]]>
TIOBE:2023年8月最受欢迎语言 Python超越老将C/C++蝉联冠军
//www.otias-ub.com/archives/1637795.html Tue, 08 Aug 2023 13:26:55 +0000 //www.otias-ub.com/?p=1637795

近日,知名编程社区TIOBE公布了2023年8月的编程语言排行榜。在此次的榜单中,Python依旧稳居第一,占比达到了13.33%。而C则位居第二,占比11.41%、C++排名第三,占比10.63%。

除此之外,Java排行第四位,占比10.33%、C#排行第五位,占比7.04%、JavaScript在本月依然保持榜单第六位,为3.29%。

可以看出,作为新兴开发语言的Python有着相当稳定的受众,在开发者中的口碑也相当出色。

不过,如果与上月相比,Python在新一期榜单中的占比出现了一定的下滑。

而C/C++作为“老牌劲旅”,在开发者中也有着相当高的占比,评价也颇高,其中,C++更是超过Java,成功跻身前三。

自 快科技

]]>
The Benchmarks Game:2022年编程语言性能排名 Python垫底
//www.otias-ub.com/archives/1456655.html Thu, 30 Jun 2022 11:27:10 +0000 //www.otias-ub.com/?p=1456655

什么编程语言最好?这是个能让各路程序员吵翻天的话题,每种语言都有自己的拥趸,全球现在找出三五十种编程语言都不是问题,热门的至少也有20种,先不说这些语言好用与否,它们的性能也是个重要指标。哪种编程语言性能最好?这事还真有人做了排名,The Benchmarks Game选择了目前热门的25种语言做了测试,具体有十大项目,如下所示:

fannkuch-redux

n-body

spectral-norm

mandelbrot

pidigits

regex-redux

fasta

k-nucleotide

reverse-complement

binary-trees

然后根据上面的测试结果量化了每种编程语言的性能,左侧的是时间,越短说明性能越好,右边的部分是基于时间及内存开销算出来的加权得分。

在这个排行中,C语言+GCC编译全毫无悬念是最快的,这一点几乎是程序员中的共识了,C++以及Rust的性能也很不错,非常热门的Java语言性能水平在中等。

经常被各大编程培训班热捧的python语言竟然是垫底水平的,虽然大家也知道它的性能不会多好,但是倒数第一还是让人有点意外的。

自 快科技

]]>
SlashData:2021年开发者报告
//www.otias-ub.com/archives/1359566.html Wed, 05 Jan 2022 21:30:39 +0000 //www.otias-ub.com/?p=1359566 SlashData发布了“2021年开发者报告”。目前,JavaScript是最受欢迎的编程语言,在全球有近1650万开发人员使用它。自2020年初流行度超过Java以来,Python一直是仅次于JavaScript的第二语言,拥有1130万用户。在过去24个月里,Rust的增长速度比其他任何语言都快。Kotlin一直被视为编程语言中的新星。

5G和物联网革命的核心开发者

  • 大中华区82%的开发人员对5G技术、学习或使用5G技术感兴趣。
  • 北美和南美的5G开发人员次之。
  • AR/VR、工业物联网和消费电子是开发者参与5G发展最快的领域,1/6的开发者正在研究5G技术。

什么会让程序员离职?

  • 许多程序员知道自己的价值,1/10的受访者表示没有什么能让他们离开目前的雇主。
  • 大约1/4的开发人员可能会受到远程工作的诱惑。
  • 7/10的东欧开发人员最关心的是加薪,这也能导致他们更换雇主。
  • 大中华区的开发人员最有可能选择“软”福利。
  • 在拥有16年或以上经验的开发人员中约1/6表示没有什么能让他们离职。

机器学习和数据科学工作流程

  • 只有1/10的DS/ML开发人员端到端参与DS/ML工作流。
  • 数据探索和分析、模型开发和可视化构成DS/ML项目的基础。

针对为第三方平台构建应用程序和扩展的开发人员

  • 68%为第三方生态系统构建应用程序开发者认为自己是专业人士。
  • 43%的第三方生态系统开发人员正在为浏览器创建应用程序和扩展,使其成为最有针对性的平台。
  • 在过去两年,第三方生态系统开发人员对电子商务平台的兴趣增长了16%。
  • 第三方生态系统构建应用程序的专业开发人员中有17%将目标对准了其他专业人员。

游戏开发中使用的技术

  • 在过去六个月,通过云部署游戏的开发者比例上升了10%。
  • 在将代码部署到云端的专业游戏开发人员中有43%使用多/混合策略。

PDF版本将分享到199IT知识星球,扫描下面二维码即可!

]]>
IEEE Spectrum:2021 年 top 编程语言排名 Python各项维度都是榜首
//www.otias-ub.com/archives/1301286.html Wed, 25 Aug 2021 12:51:10 +0000 //www.otias-ub.com/?p=1301286

IEEE Spectrum 刚刚公布了它们的 2021 年 top 编程语言排名,包括综合排名、趋势上涨最快、市场需求最多等排行。结果 Python 仍然是综合排名最高的一门语言。

看过前些日子 Stack Overflow 的年度编程语言排行榜的人可能会发现,结果不太一样。

在 Stack Overflow 排名中:JavaScript 语言最流行,除此之外 Rust 最受喜爱,Clojure 最赚钱等等,Python 在各个指标里都不能拔得头筹。

究其原因,两种排行榜的数据来源差别较大,Stack Overflow 的排名基于的是对全球 8 万多名开发者的问卷调查;

而 IEEE Spectrum 的排名收集的数据不仅包括了 Stack Overflow 网站上的数据,还包括了 CareerBuilder(覆盖了全球 55 个国家和地区的求职网站)、GitHub、Google、Hacker News、IEEE、Reddit 和 Twitter 这七个网站。

具体收集指标有 11 个:

1、Google搜索每种编程语言后的点击次数(经常被引用的 TIOBE 排名也采用了这个指标);

2、每种编程语言的Google趋势指数;

3、Twitter上每种语言相关的推文的点击量;

4、GitHub 上每种语言所创建的仓库数;

5、GitHub 上每种语言的活动仓库数;

6、Stack Overflow 上发布的涉及每种语言问题的数量;

7、Reddit 上涉及每种语言的帖子数;

8、Hacker News 上提及每种语言的帖子数;

9、CareerBuilder 上每种语言的招聘需求数;

10、IEEE Job Site(求职站点)上每种语言的招聘需求数;

11、IEEE Xplore 数字图书馆涉及的每种语言的文章数量。

大部分时间范围为 2020.6-2021.6。

由此可见,IEEE Spectrum 的结果更全面、更具说服力一些。

而它的排行榜是“定制化”的,你可以只查看嵌入式开发里最受欢迎的语言、也可以只看 Web 开发里的热点语言,还可以筛选来源指标查看符合你需求的排名。

下面就来一览结果。

55 种编程语言一决高下

首先是综合排行榜 :

前几名还是熟悉的老几位。

而去年还在 25 名的 C#一下子排到了第 6,这是 C# 9.0 版本、Windows 11 的发布以及开发者对分布式系统的关注带来的“流量”。

可以看到这个榜单很贴心地标记了每种语言是用于 Web 开发,还是用于移动端、嵌入式或是企业开发。

另外每个都有简介,这样大家在刷到一些陌生的语言时也不至于一头雾水。

看了一下 Stack Overflow 排行中最赚钱的 Clojure,39。

快速增长榜:

其中,Dart 和 Rust 是新出现的两位(没上榜综合排行前 10),其中 Rust 在 Stack Overflow 排行中也斩获了最受喜爱语言第一名,也许以后有希望冲进综合排名前 10。

再次看了一眼 Clojure,37。

市场需求最大榜:

醒醒,最有用的排名来了!这次我们截取了前 15 名。

Python 依旧霸榜,C 居然超过了 Java。

这里也出现了新面孔:SQL,以及嵌入式开发语言 Assembly 较前俩个榜单排名都有所提升。

开源社区(open source hubs)最流行语言榜:

此外,读者就可以根据自己所处/所关心的领域,查看针对性的排名了。

注意:可双选,比如查看 Web 开发中上升趋势最快的语言:

嵌入式开发中市场需求最高的语言:

查看完整排名:

https://spectrum.ieee.org/top-programming-languages/

自 量子位

]]>
RedMonk:2021年6月编程语言 JavaScript居榜首
//www.otias-ub.com/archives/1292545.html Mon, 09 Aug 2021 12:42:08 +0000 //www.otias-ub.com/?p=1292545

知名软件行业分析公司 RedMonk 发布了 2021 年 6 月(Q3)编程语言排行。整体排行基本保持不变,JavaScript 位居榜首,随后是 Python、Java、PHP、CSS、C++、C#、TypeScript、Ruby 和 C 语言。

排行:

1 JavaScript

2 Python

2 Java

4 PHP

5 CSS

5 C ++

5 C#

8 TypeScript

9 Ruby

10 C

11 Swift

12 R

13 Objective-C

14 Shell

14 Scala

16 Go

17 PowerShell

18 Kotlin

19 Rust

20 Dart

RedMonk 的调研方法最初是由 Drew Conway 和 John Myles White 在 2010 年底设定的,在随后的几年中得到不断的完善。该调查方法是从 GitHub 和 Stack Overflow 中提取语言排名,以及将它们结合起来以获得试图反映代码 (GitHub) 和讨论 (Stack Overflow) 吸引力的排名。这个想法不是提供当前使用的统计上有效的表示,而是将语言讨论和使用相关联,以便深入了解潜在的未来采用趋势。

在本季度重点值得关注的语言有:

1. Java(上升 1 位)

在此前几个季度持续下降到第 3 位之后,观察者质疑该语言是否会持续下降。不过在本季度中,Java 和 Python 重新并列第二。

这并不奇怪,但对于该语言的许多竞争对手——应该说,还有一两个奇怪的行业分析师——定期为企业基础设施的坚定者撰写墓志铭。曾经为运行有线机顶盒而创建的语言仍然是一种主力,而且重要的是,它始终能够找到新的工作要做。这些年来 ,Java 在这些排名上的表现继续给人留下深刻印象,而且由于它表现出非凡的适应快速变化环境的能力,因此它是一种难以与之抗衡的语言。

2. TypeScript(保持不变)

在 RedMonk 的排名中连续 2 个季度排在第 9 位之后 ,TypeScript 刚刚连续第 2 次排名第 8。这已经达到了这个排名,并且以牺牲像 Ruby 这样的语言为代价,非常令人印象深刻。

但是现在语言面临的问题是这是否已经到了它的极限?它是否有能力提升并最终超越 C#、C ++ 甚至 PHP 等长期现有产品,或者 TypeScript 是否基本上处于或接近其潜力的极限?

不可能有任何可靠性,但有趣的是,一年前的这个时候 TypeScript 在排名所依据的综合得分中落后第 5 名语言 6 分,但这次差距只有 2 个点。当然,过去的表现并不总是能预测未来的表现,但这至少表明 TypeScript 可能还有一些空间。

3.Go/Kotlin/Rust (保持不变)

与 TypeScript 一样 ,Kotlin 和 Rust 在本次排名迭代中都没有变化。一方面,这一事实可能令各自语言的拥护者失望,但另一方面,它可能反映了系统语言的新出现的现实。然而 ,Kotlin 和 Rust 的相对表现,以及 Go 的长期停滞是有启发性的。

多年来 ,Java 一直面临着名副其实的挑战者的挑战,以争夺企业应用程序首选语言的称号。但是,如上所述 ,Java 并没有表现出骑虎难下的迹象,事实上,与 Go、Kotlin 和 Rust 不同,在排在第三位的两个季度之后,它的份额在这一轮中成功增长。

因此,通过结合自身的适应性和企业的惯性 ,Java 保留了企业应用程序市场的很大份额,这似乎是有道理的,这意味着它会成为挑战者——像 Go、Rust 和较小的语言由于共享 JVM 平台 ,Kotlin 与 Java 的竞争比彼此之间的竞争要少。

如果这个假设是正确的,我们应该期望 Java 能够保持其性能,并且未来从 Go、Kotlin 和 Rust( 如果有的话)中获得的收益将更难获得,因为它们在竞争较小的工作负载池中的份额。

4. Dart (上升 1 位)

上个季度我们讨论了 Dart 在长期停滞后的显着上升,几乎可以肯定地归因于流行的 Flutter 框架,并询问了 Dart 是否已经完成移动或者是否有足够的动力来承载它的问题进入前 20 名。在过去 1 个季度中,我们有了答案,因为 Dart 在第 20 名中首次进入前 20 名——在此过程中取代了 Perl。

这项成就在手,现在的问题是 Dart 能否保持前 20 名的排名,如果是,它是否可以继续在排行榜上攀升。当然,这将是一个挑战,因为撇开前面提到的竞争挑战不谈 ,Kotlin 和 Rust—— 在 Dart 面前的两种语言——本身就非常受欢迎。但这就是让它在接下来的几个季度中的表现变得有趣的原因,因为它将让我们对这些排名中后端与前端技术的当前趋势有一些了解。

5. Julia(下降 4 位)

最后,作为一种我们经常被问到的语言,值得注意的是 Julia 实际上已经下降了好几位。一年前的这个时候,Julia 刚好在前 20 名之外排名第 24, 但在这个季度中,它已经回落到第 28 名。与往常一样,重要的是要注意,排名越低,语言之间的绝对差异变得越小,但对于一种语言来说,像这样的负面表现通常并不令人鼓舞。

在 Julia 的案例中,部分困难在于其目标区域;由于非常注重分析 ,Julia 经常发现自己与 Python 和 R 竞争开发人员的注意力,这两种语言无论有什么缺陷,都已被证明既受欢迎又可持续。在鸡和蛋类型的问题中,这导致周围生态系统中缺乏生命。话虽如此,值得注意的是 Julia Computing, 一家由 Julia Pro 创办的商业公司。

自 cnbeta

]]>
TIOBE:2021年8月编程语言排行榜 数据挖掘和人工智能语言强势崛起
//www.otias-ub.com/archives/1291819.html Fri, 06 Aug 2021 12:59:09 +0000 //www.otias-ub.com/?p=1291819

今天,TIOBE 官方最新发布了8 月的编程语言榜单,一起来看本月榜单中有什么值得关注的发展趋势吧?每一种编程语言的兴起从来都离不开它所适用的技术领域,二者之间一直以来都是水涨船高的关系,曾于智能手机兴起阶段一度攀升至 TIOBE 榜单前十的 Objective-C 就是最好的例子。

Objective-C 的巅峰期在 2012-2014 年。那几年,智能手机的移动应用发展迅猛,Objective-C 作为当时苹果 iOS 应用开发的首选编程语言,自然也随着 iPhone 市场的不断扩大在应用开发者之间开始流行。但这一切在 2014 年苹果宣布推出 Swift 以取代 Objective-C 后逐渐终结,自今年 4 月起,Objective-C 再也没进入过 TOP 20。

如今,数据挖掘和人工智能的蓬勃发展也是如此,这一领域的编程语言正在逐渐崛起。其中最成功的当属 Python 莫属,不仅成功挤入前三并有望冲击第一,更是获得了 2020 年度 TIOBE 最佳编程语言奖。同样适用于数据分析、人工智能等领域的上古编程语言 Fortran 也由此再次复兴,自 4 月冲进 TOP 20 后,本月更是刷新了自身最高名次:第 13 名。

更令人惊讶的是,逻辑编程语言 Prolog(Programming in logic)在阔别 15 年后,本月也重新进入了 TOP 20。拥有简单文法、丰富表现力和独特的逻辑型编程三大特点的 Prolog特别适用于 表示人类思维和推理规则,因此一问世就获得了许多专注于人工智能领域开发者的关注,也成功应用于 数理逻辑、 自然语言理解等诸多 领域:AI 界著名的认知计算系统 IBM Watson 中就有 Prolog 的身影。

在这之中,R 语言的下滑就显得格外突兀,TIOBE 的 CEO Paul Jansen 对此表示:“我猜这是因为 Python 正在蚕食 R 的市场份额。”

除了以上,在本月 TOP 20 的榜单中还有一些值得关注的变化:

  • Go 语言在 7 月排名上升至第 13 名后,本月又降至第 18 名;
  • 于去年同期相比,Swift 今年以来的市场份额一直呈下滑趋势;
  • PHP 以连续 3 个月维持第 8 名的位置。

其他编程语言排名

下面列出了完整的 21-50 名,因为是非官方发布的,所以可能存在遗漏:

第 51-100 名如下,由于它们之间的数值差异较小,仅以文本形式列出(按字母排序):

  • Action, Alice, Arc, Awk, B4X, bc, BCPL, Bourne shell, CFML, CL (OS/400), Clipper, CLIPS, Common Lisp, Eiffel, Elixir, Elm, Forth, Fortress, Haskell, Icon, Inform, Io, J#, Korn shell, LiveCode, Maple, Modula-2, MQL4, MUMPS, NATURAL, NXT-G, Oberon, OCaml, Occam, OpenEdge ABL, PL/I, Post, PowerShell, Pure Data, Q, REXX, Ring, RPG, Simulink, Smalltalk, Solidity, SPARK, Stata, Uniface, Xojo

Top 10 编程语言 TIOBE 指数走势(2002-2020)

历史排名(1986-2021)

注:以下排名位次取决于 12 个月的平均值。

编程语言“名人榜”(2003-2020)

【说明】:

TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于全球技术工程师、课程和第三方供应商的数量,其中包括了流行的搜索引擎以及技术社区,如 Google、百度、维基百科、CSDN、必应、Hao 123 等等。具体的计算方式详见:https://www.tiobe.com/tiobe-index/programming-languages-definition/。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。

这个排行榜可以用来考察你的编程技能是否与时俱进,也可以在开发新系统时作为一个语言选择依据。

详细榜单信息可参考 TIOBE官网:https://www.tiobe.com/tiobe-index

]]>
TIOBE:2021年6月编程语言排行榜 Python 有望超越 C 语言成为第一名
//www.otias-ub.com/archives/1259028.html Tue, 08 Jun 2021 13:40:12 +0000 //www.otias-ub.com/?p=1259028

TIOBE 官方最新发布了 6 月的编程语言榜单,这个月榜单中又有怎样的发展趋势?在本月榜单中,位居第二名的 Python 与第一名 C 语言之间的差距正在逐渐缩小,从上个月的 1.51% 缩小到了本月的 0.7%。

Python 有望成为第一名

对此,TIOBE 官方预测,Python 即将接管 TIOBE 榜单榜首的位置。与此同时,TIOBE 索引榜单即将于下个月迎来 20 周年。在过往 20 年间,仅有两种语言达到过 TIOBE 榜单第一的位置,它们分别是 C 和 Java 语言。因此,在高速的发展趋势下,Python 在不久的将来或将超越 C 语言成为榜单的第一名,而届时势将会成为历史中重要的一个时刻。

另外,近几个月间,我们发现 Java 的市场份额在持续下降,市场份额比上个月少 0.2%,且其增长趋势为 -4.56%。除此之外,TOP 20 中还有一些值得关注的变化:

Perl 从上个月的第 19 位上升到了本月的第 15 名;

Swift 上升两个名次,成为第 16 名;

Go 语言有所下滑,从上个月的第 16 位跌至本月的第 20 位。

其他编程语言排名

下面列出了完整的 21-50 名,因为是非官方发布的,所以可能存在遗漏:

第 51-100 名如下,由于它们之间的数值差异较小,仅以文本形式列出(按字母排序):

ABC, ActionScript, AutoLISP, B4X, Bash, BBC BASIC, bc, Bourne shell, CFML, CIL, CL (OS/400), Clojure, CoffeeScript, Common Lisp, Elm, Emacs Lisp, Erlang, F#, Hack, Icon, Inform, Io, J, Korn shell, Lingo, LiveCode, Maple, Modula-2, MQL4, MS-DOS batch, MUMPS, NATURAL, NXT-G, OCaml, Occam, OpenCL, OpenEdge ABL, PL/I, PostScript, Pure Data, Q, REXX, Ring, RPG, Scheme, Snap!, Stata, Vala/Genie, Verilog, Xojo

Top 10 编程语言 TIOBE 指数走势(2002-2020)

历史排名(1986-2021)

注:以下排名位次取决于12个月的平均值。

编程语言“名人榜”(2003-2020)

自 cnbeta

]]>
TIOBE:2021年4月全球编程语言排行榜 Fortran意外重回前20
//www.otias-ub.com/archives/1227368.html Wed, 07 Apr 2021 13:53:29 +0000 //www.otias-ub.com/?p=1227368

TIOBE指数是用来确定一种编程语言受欢迎程度的指标之一。它并不表明哪种编程语言是最好的,也不表明哪种编程语言写的代码行数最多,而是利用在谷歌、维基百科、必应、亚马逊、YouTube等各种引擎和网站上发出的搜索查询次数来确定某种编程语言的受欢迎程度。

2021年4月版的TIOBE指数已经上线,这个月的最大亮点是一门古老的编程语言Fortran在前20名的榜单中意外回归。

值得注意的是,Objective-C终于从前20名的排名中掉了下来。考虑到苹果早在2014年就宣布Swift作为其替代品,这并不奇怪。真正令人惊讶的是Fortran重返指数前20名。Fortran最早出现在1957年,显然已经不被广泛使用了。早在2020年4月,这门语言的排名是34,但在受欢迎程度上一直在不断攀升,现在又回到了前20名。

TIOBE前20指数中包含的编程语言如下:

  1. C
  2. Java
  3. Python
  4. C++
  5. C#
  6. Visual Basic
  7. JavaScript
  8. Assembly Language
  9. PHP
  10. SQL
  11. Classic Visual Basic
  12. Delphi/Object Pascal
  13. Ruby
  14. Go
  15. Swift
  16. R
  17. Groovy
  18. Perl
  19. MATLAB
  20. Fortran

在过去几年左右的时间里,前五名的位置基本保持一致,但其他有趣的观察还包括汇编语言,它已经打破了前十名的障碍,现在已经超过了PHP和SQL。

其他进入TIOBE指数前50名的编程语言还包括SAS、Scratch、COBOL、Scala、T-SQL、Rust、Kotlin等。TIOBE表示,它的指数可以用来判断你的编程知识的更新程度,也可以用来决定开发新软件时使用哪种编程语言。

自 cnbeta

]]>
TIOBE:2021年3月全球编程语言排行榜 前五未变化 C仍最受喜欢
//www.otias-ub.com/archives/1214004.html Tue, 09 Mar 2021 12:43:27 +0000 //www.otias-ub.com/?p=1214004

TIOBE 今天公布了 2021 年 3 月顶级编程语言排行榜,榜单排名基本上和 2 月相同,不过有一些细微的调整。和今年 2 月一样,C 语言再次以 15.33% 的比例位居榜首;亚军由 Java 获得,占比为 10.45%;Python 为第三名,占比为 10.31%。C++ 和 C# 分别以 6.52% 和 4.97% 位居第四和第五。与 2 月份的排名相比,3 月份的前五名没有变化。

Visual Basic 以 4.85% 领先于排名第七的 JavaScript(2.11%)和排名第八的 PHP(2.07%)。与 2 月份相比,唯一的动荡发生在前十名的底部。在最新排名中,Assembly language 超过 SQL 获得了第九名,占比为 1.97%,而 SQL 目前的占比为 1.87%,位居第十。

TIOBE 综述还列出了历史同比数据,以详细说明排名的长期趋势。与 2020 年 3 月相比,Classic Visual Basic 在最新的榜单中从 18 名跃升至 12 名。Delphi/Object Pascal 从 20 攀升至 14,Groovy 从 36 飙升至 15。在 2020 年 3 月至 2021 年 3 月期间,MATLAB 下滑了 3 个位置,从 18 位下降到15位。同期,Swift 从 13 名下滑到 19 名。

鉴于排名的更新基本保持不变,TIOBE 的首席执行官 Paul Jansen 在最新综述中表示,在“不久的将来”将会引入功能更新,其中一个功能涉及到修复有助于支撑统计差异的错误。

他表示:“由于使用了复杂的算法,例如自动消除离群值,所有编程语言的所有百分比之和[确实]并不总是加起来是 100%。这是一个错误,应该尽快修复”。

Jansen 表示,TIOBE 将为编程语言“添加漂亮的标识”,以 “让语言表看起来更有吸引力”,并提到即将推出的编程语言属性功能。Jansen 表示:“将被追踪的属性来自维基百科。例如语言范式(面向对象、功能型、……)和类型系统(静态类型、动态类型、弱类型、……)。我们还将添加趋势,以了解哪些属性正在流行”

自 cnbeta

]]>
2020年什么编程语言最受欢迎,待遇最高?
//www.otias-ub.com/archives/939371.html Wed, 18 Sep 2019 06:10:35 +0000 //www.otias-ub.com/?p=939371
编程语言是人类控制电脑的手段,所以绝大多数编程语言都试图使这个过程更加强大和简单。也正因此这个领域诞生了数百种编程语言,不过其中许多编程语言目前已经不再使用,还有一些可能在未来几年里会过时,然而还有很多语言将不断发展,在目前以及未来都占有重要的位置。
比较编程语言是一件非常复杂的事,因此我们创作了很多好玩的图片或段子用来表达对各种编程语言的定义,本文就以下图开始吧:
下面提供的两个表格总结了过去五年(2015-2019)里编程语言的流行趋势。该数据来自 2015-2019 年的 Stackoverflow 人气调查。
为了清楚准确地理解,我们将编程语言分为两组,第一组是 2000 年以前诞生的语言,第二组是 2000 年以后诞生的语言。将 2000 年作为边界是随机的选择,但对于理解这两组编程语言的趋势非常有帮助。该表还列出了这些编程/脚本语言的起源年份和主要应用领域。

第一组观察结果

除了 Python 之外,从 2018 年到 2019 年所有语言的流行度都在下降。
1. Python
Python 是过去五年来人气不断上升的唯一语言。这是一门通用语言,如果你希望在 2020 年只学习一门编程语言,并希望涵盖更广泛的软件开发领域,不妨考虑 Python。
2. Java
Java 的市场占有率一直在不断上升,但在 2019 年有所下降,原因是背靠 Google 的 Kotlin 在 Android 开发领域获得了极大的普及。毫无疑问 Java 是一个不错的选择,但它现在属于 Oracle 公司,由于公司的商业利益冲突,谷歌正在推广 Kotlin。
事实上,由于使用 Java 的庞大开发群体、框架和遗留应用程序,大量公司仍在使用 Java 并将继续使用 Java。
3. C/C++
C 和 C++ 仍然保持着大约 20% 的市场占有率,并且由于其固有的功能和遗留系统,它将会继续存在。
4. JavaScript
JavaScript 的受欢迎程度可归因于诸如 Node.js 等流行的 JavaScript 库和框架的增长。JavaScript 是用于构建动态网站的语言,它将成为未来几年 Web 开发的首选语言。而且,如果我们想要进行 Web 开发,绝对无法绕开 JavaScript。
5. R 语言
R 语言近年来越来越受欢迎,原因在于数据分析需求的增长和普及。R 语言主要是数据科学家在使用,与 Python 这种通用语言相比,它拥有贡献了大量数据科学库和模块的活跃开发者。不过如果只能选一个的话,相信更多的数据科学家会倾向于 Python。
6. Ruby
与 PHP 一样,在 Web 开发的后端构建方面,Ruby 也面临来自 JavaScript 甚至 Python 的激烈竞争。因此,对于 Web 开发而言,JavaScript 和 Python 会是比 Ruby 更好的选择(Python 的服务端框架 Flask 和 Django),而且更加灵活。
7. PHP
2019 年,PHP 流行度急剧下降,这可以追溯到服务器端对 JavaScript 和 Python 的接受程度。如果有人想要进行服务器端 Web 开发,PHP 仍然是一个很好的选择 —— 有大量流行的框架,如 CakePHP,Codeigniter 等,否则选择通用编程语言会更好。
8. Objective-C
在 Apple 迁移到 Swift 语言之前,Objective-C 是开发 Apple 软件(如 macOS,iOS 等平台)的主要语言。因此,这种转变反映在两种语言的流行中,即 Objective-C 的受欢迎程度下降,而 Swift 的普及率正在上升。所以,如果有人希望成为 Apple 产品的开发者,Swift 理所当然应该是首选语言。

第二组观察结果

1. Swift

Swift 取代了 Objective-C 作为 Apple 相关软件和应用程序开发的主要语言。
由于 Apple 的支持推广,因此自成立以来 Objective-C 的受欢迎程度越来越高,Apple 也将继续使用它。如果有人正在寻找特定于 Apple 的开发平台,那么 Swift 将成为一种必须知道的编程语言。不过 Swift 主要是面向特定供应商和产品的语言,在 Apple 生态系统之外的使用率非常低。
2. Go
Google 不断地在维护、使用和推广 Go 语言。而它最初的开发动机是解决对一些流行语言的不足,同时将最好语言的特性集于一身。
自 2017 年以来,Go 的受欢迎程度越来越高,并且在 Google 的支持下,它在未来几年内都将会继续保持高速发展。Google 也将 Go 作为新项目的主要语言并用 Go 取代其他语言,这种趋势在未来几年会继续保持,因此如果想学习一门新的编程语言,Go 值得拥有。
3. Kotlin
Kotlin 最初作为用于 Android 开发的 Java 替代方案而迅速“上位”。凭借着 Android 的增长、Google 的支持以及其简洁的语法,它成为了 Android 开发者的一个可选方案,更是学习 Android 开发的不错选择。Kotlin 将成为 Android 开发的“最优”方案。
4. Scala
Scala 试图取代 Java,但开发者似乎不太认可。它没有来自任何大公司的大力支持,另外,由于 Scala 是一门函数式编程语言,以及对 JVM 的依赖,使得它并没有得到太多的普及,虽然会有稳定的增长,但速度很慢,而且肯定不是适合初学者学习的语言。
5. Julia
Julia 旨在将 C 的速度和 Python 的简便集成在一起,但奇怪的是,在 Stackoverflow 调查中并没有体现 Julia 的受欢迎程度,但它在数据科学领域颇受欢迎,并且从长远来看它也被视为 R 和 Python 的挑战者。当然,Julia 会继续增长,但对于工作和成长来说,Python 或 R 更好。
6. C#
C# 是用于 .NET 框架的编程语言,由微软开发。它的受欢迎程度在过去几年中基本保持不变,并将继续保持类似的趋势。这是特定于供应商的语言,因此如果需要在微软提供的开发环境中工作,可以选择此语言。最近,微软已开源 .NET,因此它会出现一些上升趋势,但它毕竟是特定于供应商的,因此不会受到太大影响。
7. Rust
Rust,Clojure 等是具有用户基础但不那么流行的语言,所以人气方面不会有太大的上升。

一图胜千言

要了解头部编程语言增长的清晰趋势和现状,可通过各种图表来了解它。下图描绘了一个非常清晰的现状,即在旧的语言栈中,JavaScript 远远领先于其他的语言,并且将继续在 Web 开发中占据一席之地。C 和 C++ 共同与 Java 竞争,并且非常接近后者的地位。
Python 的受欢迎程度也越来越高,而且在过去的五年里,它是唯一一个人气不断上升的语言。
新语言越来越流行,其中大多数语言都受到跨国公司如微软、Google 和 Apple 等 IT 巨头的支持。

开发者喜欢和希望学习的语言

从上面的表格和图表我们可以看到,喜欢 Rust 的人数在过去五年中正在逐步增长,而 Swift 慢慢失去了开发者的喜爱,Python 则处于这两者之间。
另一个独特的观察结果是,开发者喜爱的 5 门语言中有 4 门来自 2000 后诞生的编程语言,且只有 Python 是较旧的语言,对 Kotlin 的喜爱则是从 2017 年 Google 官方支持它作为 Android 开发的一级语言开始。
从上表可以看出,开发者使用 JavaScript 和 Python 进行开发的愿望在过去几年中不断增长,这反映了大众对这两门语言的喜爱。另外,Java 在这方面的数据则出现了急剧下降的趋势,这是因为 Kotlin 成为了 Android 开发的替代方案,以及 Oracle 对使用 Java 的政策发生了变化。

技术和编程语言

在此图中,我们可以看到最大的簇集是 Web 开发和 JavaScript 以及它们的各种框架。第二大簇集是微软技术和 Python 技术,这里又再次印证开发者对该语言的欢迎和热爱。其中 Python 技术的簇集主要与数据科学技术相关,这些技术与 Python 的增长息息相关。

TIOBE 指数

用于对编程语言进行排名的 TIOBE 指数基于搜索引擎的搜索结果。在 TIOBE 指数中, Java 在过去二十年中一直占据主导地位,C 在过去三十年里也一直保持着第一或者第二的位置。而在过去的二十年里, Python 的排名飞速增长,从 1999 年的第 24 名,到 2019 年的第 3 名。
在新语言(2000 年后诞生)中,Rust 的排名上升明显,从第 33 位升至第 28 位,Julia 也从第 50 位升至第 39 位。值得注意的是,Kotlin 似乎从未进入过前 20 名。

PYPL 指数

PYPL 指数的来源主要是通过分析语言在 Google 上的搜索频率。被搜索得越多意味着该语言就越受欢迎。原始数据来自 Google Trends。
由下图可见,TOP 3 的编程语言分别是 Python, Java 和 JavaScript。C#, PHP 和 C/C++ 也处于头部位置,这种趋势类似于 Stackoverflow 的语言流行度和 TIOBE 指数。
上图显示,在新的编程语言中,即 2000 年后诞生的 Kotlin, Go, Rust 和 Julia,它们的排名也在不断上升。

就业市场与薪酬

薪酬取决于产品的地理区域和需求,基于编程语言的薪资比较只是预测或估计薪资趋势的工具。我们根据编程语言的流行调查对薪资进行了汇总,即 2018 年的 Dice 薪资调查和 2018 年和 2019 年的 Stackoverflow 薪资调查。
从上表可以看出,Go 开发是市场上薪酬非常高的工作,在 2019 年的 Stackoverflow 调查和 2018 年 Dice 薪资调查中,它都在高薪工作中排名第一。原因其实很简单,因为 Go 是 Google 支持的语言,主要用于 Google 内部,另外 Google 希望推广这种语言所以自然会用高薪来吸引开发者。
这里要提一个经济术语——价格弹性,企业对岗位的需求具有弹性,这就导致岗位的薪酬不稳定。因此很明显,全球平均工资不是选择语言的合理因素。
假如存在一门接近衰亡的编程语言,但应用它的遗留系统很少,因此为了维护这些产品,公司往往提供非常高的薪酬,不过这些职位总是十分稀有。另一方面,由于主流语言提供了大量的工作岗位,平均工资自然就会下降。
作为结束语,可以看到预测编程语言的趋势十分简单,但只选择一门语言来学习是一个非常艰难的抉择,这完全取决于个人选择和他们未来的计划。
例如,如果你想从事 Web 开发工作,那么你就不能忽视 Javascript;如果你想从事 Apple 产品的开发工作,绝对不能无视 Swift;如果你青睐于系统的底层开发,那么 C 和 C++ 会是你的好朋友。Python 则会让你在很多领域跑得更快,不过目前主要用于数据科学。
所以,每种语言都会带您踏上不同的旅程。选择目的地,你需要做的就是使用通往终点的语言。
]]>
Stack Overflow:2019全球编程语言高薪排行榜
//www.otias-ub.com/archives/925919.html Mon, 19 Aug 2019 14:37:09 +0000 //www.otias-ub.com/?p=925919 近日,Stack Overflow 发布了 2019 年的最新调查结果,总结了不同编程语言在行业中可能获得的薪水。当然,在这个过程中也需要关注一些其他因素,比如:语言对使用者是否友好,这有助于更快地学习语言;是否与现在的科技趋势相关。(注:该数据根据 Stack Oveflow2019 年关于编程语言薪酬排行开发者调查报告得出。)

全球十大收入最高的编程语言

如上图是全球前十大收入最高的编程语言排名,但根据调查,收入与地域之间也是有区别的,比如在美国,Scala 的收入最高,可以达到 143k 美元,其次是 Clojure(139k 美元)、Go(136k 美元)、Erlang(135k 美元)、Objective-C(132k 美元);在印度,Clojure 和 Rust 收入最高。

工作经验与薪水

工作经验与薪酬肯定是相关的,但根据调查,有些编程语言无论工作经验多少,薪资都比较高好,而有些编程语言无论多少年工作经验都很一般。

如上图,红圈的大小不同代表着受访者人数的范围不同,横轴代表着工作经验(年数),纵轴代表着薪资中位数。

不难看出,使用 Clojure、F#、Scala、Go、Rust 和 R 语言的开发人员,虽然工作经验并不见得非常多,尤其是 Rust、R、Ruby 和 Go,也会获得不少的薪水。然而,PHP、Java、C、C++,即使有多年开发经验,薪水也很难有比较高的提升。

职位与薪水

当然,薪酬高低也与所从事的职业有非常大的关系。根据对全球四大 IT 市场的调查,DevOps 专家全部高居榜首,可见市场对这一技术的需求量有多大。除此之外,数据科学家、全栈工程师、嵌入式开发工程师、桌面开发人员的市场受欢迎度均较高。

如果按照职位来划分,薪水又会出现一些不同。管理岗位的薪水肯定会略高一些,其余基本与市场需求相对应,DevOps 专家的薪水可以达到 71k 美元,数据或者机器学习专家的薪水可以达到 61k 美元,全栈开发者的薪资为 57k 美元,后端开发者略低一些为 56k 美元。

中国热门编程语言收入情况

国内整体的薪资水平要略低于全球,需求量较大的依旧是 Java、Python 这类语言。如果与全球薪资较高的编程语言比的话,如果对国内主流招聘网站进行统计,以“Go 语言”为关键字在全国范围搜索,热门地区(北上广深等需求量较大的城市)月薪基本集中在 15-30k 人民币之间,一线互联网大厂的薪酬确实更具竞争力,比如 BAT、高德、奇虎 360、滴滴等,不仅给出的月薪更高(25-60k 之间浮动),不少还明确标出可以给 14 至 16 个月的薪水,而所要求的工作经验基本都在 3 到 5 年。

至于 Scala 语言,整体薪水确实比 Go 语言略高一些,在没有筛选的情况下,首页出现的大部分薪资集中在 20-50k 之间,这一结果倒是与全球的调查报告相匹配。

此外,在国内几个招聘网站进行搜索,都没有找到太多有关 Clojure 的招聘需求,样本数量太少,很难判断这一岗位的薪资情况,但可以看出国内对此的需求极低,而 Clojure 在全球市场却可以占到薪资排行榜的第一名,这一结果倒还蛮出乎意料。

国内对于 Rust 的招聘需求并不旺盛,可搜寻到的岗位不到 Go 语言的十分之一,只比 Clojure 好一些,基本是规模较大的企业对此才有招聘需求,比如今日头条、滴滴等,给出的薪资倒是还算优厚,月薪基本集中在 25k 人民币以上。

至于 DevOps,虽然国内可搜寻到的岗位不少,但薪资并没有太高,基本与 Go 语言的区间水平相当,要求具备 3 到 5 年工作经验的依旧是最普遍的。

如果回看 2018 年某招聘网站发布的统计数据,算法研究员和机器学习工程师在过去一年的平均月薪偏高,分别为 28435 元和 26798 元,架构师薪资最高为 29600 元。编程语言中,Go 语言的平均月薪最高为 22961 元,其次是 C++、Python、Java。

编程语言适用场景

虽然薪水高低会成为影响开发人员是否选择的重要因素,但并不是唯一因素,不同编程语言的适用场景也是需要开发人员认真考虑的。

Go

Go 语言由谷歌开发,并于 2009 年 11 月发布。它是开源的,由于这个原因使得它在公司内部的不同项目中得到了积极应用,一些很有名的服务也使用 Go 语言开发,如 SoundCloud、Netflix 和 Dropbox。

近年来 Go 语言受欢迎程度大大提高,还得益于 Go 语言下面的优势:

  • 支持多线程任务
  • 支持并行处理
  • 快速的启动时间
  • 高效的内存管理

很多人都认为它将成为未来的服务器语言,Go 有一些很不错的特性:

  • 它非常简洁、简单和安全
  • 编译非常快
  • 它支持带有嵌入式类型的接口
  • 它不需要任何外部依赖关系来生成静态链接的本机二进制文件
Kotlin

Kotlin 编程语言是由 JetBrains IT 公司开发的,它已经成为 Android 的官方开发语言。这是在 2017 年谷歌开发者大会上宣布的。

它有很多优点,如:

  • 易于理解的语法
  • 与 Java 兼容
  • 谷歌的支持
  • 快速增长的社区

很有可能不久之后的 Android 应用程序完全使用 Kotlin 编写,所以如果想面向移动应用程序编程,应该考虑将 Kotlin 作为一个选择。

Ruby(特别是 Rails)

作为开发 web 应用程序的工具,Ruby 获得了广泛欢迎,并被用于开发全球很多流行产品的服务端部分。Ruby 语言的主要目的是创建强大的、易于理解的程序,其中最重要的不是程序运行的速度,而是开发时间。此外,代码的清晰性和简单性使 Ruby 非常受欢迎。

Ruby 一些不错的特性有:

  • 一切都是对象
  • 模块——这些模块允许在运行时动态添加类层次结构的新元素
  • 代码开发
  • 动态类型
  • 鸭子类型
  • 代码质量

Objective – C

Objective-C 语言用于开发苹果生态系统中的应用程序,纯粹用于开发 Mac OS X 和 iOS。尽管出现了一种新的编程语言 Swift,,但 Objective-C 仍然是开发人员社区中非常流行的选择。此外,因为它与苹果的关系使其拥有一个非常高的需求市场。只要苹果“依赖”Objective-C,开发人员就会一直有市场,并可以获得丰厚的报酬。

Objective-C 一些很好的特性有:

  • 类即对象——每个类都是一个元类的实例
  • 动态类型
  • 可选的静态类型
  • 动态运行时
  • 内省 introspection

C #

C# 是由一群微软工程师开发的,目的是在.NET 平台上开发应用程序。假如希望在微软平台开发本地应用程序并获得相关经验,那么 C# 是理想的语言。

从本质上讲,C# 是一种简单、现代和通用的面向对象的编程语言。C# 的一大优点是相对简单,并且能够更多地关注算法而不是实现细节。目前,C# 被用于开发许多应用程序,从小型桌面程序到大型门户网站和人们日常使用的 web 服务。

C# 主要用于:

  • Windows services——没有 UI 的长时间运行的程序
  • Web 应用程序——客户端 / 服务端应用程序
  • 窗口应用程序——运行在桌面上的应用程序
  • Web 服务——通过 HTTP 提供服务的应用程序
  • 游戏——用 Unity 完成
  • 控制台应用程序——没有 UI 的应用程序

Python

大量的框架工具、培训材料、友好的社区支持、编码的简单性使其在 2019 年的高薪编程语言榜单上占有一席之地。Python 是目前使用最强大的编程语言之一。它用于:
  • 数学计算
  • 数据分析
  • Web 开发
  • 机器学习
  • 任务自动化

事实上 Youtube、Dropbox、Reddit 和 Google 等应用程序都是用 Python 开发的。

Java

很长一段时间以来,Java 编程语言一直是开发人员社区中需求最旺盛的语言之一。Java 主要用于开发银行和自动化测试中的产品。它的跨平台特性非常受欢迎,这是因为 JVM 的缘故。

Java 是一种很有前途的编程语言。它被广泛地用于创建服务器和移动应用程序,还被用作开发 Android 本地应用程序。

Java 可用于开发:

  • 移动应用程序
  • 网络应用程序
  • 桌面应用程序
  • 游戏
  • 数据库连接

Swift

Swift 是用于开发苹果平台应用程序的主要语言,主要应用于: 
  • MacOS
  • iOS
  • watchOS
  • tvOS

这是一种非常通用的编程语言,主要用于开发苹果产品。值得一提的是,它是在 5 年前(2014 年)刚发布。其主要和最突出的优点是速度:无论是运行还是启动应用程序。正是这种优势赋予了它这个名字,它的创造者说其吸收了其他语言的所有优势。

总  结

市场上总是缺少有才华的程序员,未来几年,这仍然将是市场上的一个紧迫问题。对上述语言的了解和足够的相关工作经验可以为开发人员打开许多大门。此外,开发者没必要限制自己只使用一种语言。无论是理论还是实践,都可以尝试用另一种编程语言学习新的知识,所需要的只是激情和努力!

此外,InfoQ 希望可以完整展示出一个客观的国内开发者生态。所以,我们发起了国内版开发者调查问卷,如果您想了解国内开发者的群体画像,期待您的参加。我们将在样本数足够以后,制作一份国内版开发者调查报告,以飨读者。

来自: AI前线

]]>
HackerRank:调查显示年轻的开发者反而对编程语言更保守
//www.otias-ub.com/archives/687583.html Mon, 05 Feb 2018 09:22:55 +0000 //www.otias-ub.com/?p=687583 HackerRank 近日对约 4 万名开发者进行了调查,并发布了名为“2018 年开发者技能报告”的调查结果。有趣的是,报告发现,虽然 Go、Kotlin 等新编程语言在所有开发者的想要学习的语言排名中靠前,但年轻的开发者(18-24岁)较之老一辈的开发者,更不喜欢这些较新的编程语言。

18-24岁的开发者喜欢 Go 语言的比例为 22.6%,Kotlin 为 17.8%,Swift 为 15.6%。

随着年龄的增长,开发者对新语言的喜爱度越来越高。25-34 岁的人对 Go 语言的比例为 47% ,35-44 岁的比例上升至 54% ,而 45-54 岁的人比例高达 68% 。

这个结果很让人意外,因为按常理来说,年轻的开发者应该对新知识有更强的接受度和学习兴趣,他们更有可能全面学习语言,年长的开发者才会根据自己的经验选择那些他们认为经得起时间考验的老语言。资深技术专栏作家 Matt Asay 在外媒上发文表示,究其原因,应该是经验的问题,在你拥有了老语言的使用经验后,使用新语言会变得更清晰明了。换句话说,如果你已经花了数年的时间去了解 Java ,那么应该会更容易理解 Go 有多优秀。

文中还写到,如果你对应用感兴趣,那么 JavaScript 更好;如果对数据感兴趣,Python 更好;而对于游戏或者硬件,C / C ++ 更好。Go 虽然是一种很酷的语言,但它只占据了一个小小的位置,似乎并没有成为某种基础设施的最擅长的代码。也因此,它没有真正抓住年轻工程师的想象力。

Adobe 的开发者 Simon MacDonald 也曾说过这样一句话:

]]>
数据处理的 9 大编程语言
//www.otias-ub.com/archives/471333.html Wed, 11 May 2016 14:48:35 +0000 //www.otias-ub.com/?p=471333 有关大数据的话题一直很火热。伴随着信息的爆炸式增长,大数据渗透到了各行各业,广泛应用于公司中,同时也使得传统的软件比如 Excel 看起来很笨拙。数据分析不再只是书呆子的事,同时其对高复杂性分析、实时处理的需求也比以往更加庞大。

那么筛选海量数据集最优的工具是什么呢?我们咨询了一些数据黑客关于他们在数据分析的核心工作中最喜欢的编程语言和工具包。

1462978058-2376-63b0003b5fe754aadd9

R 语言

这份名单如果不以 R 开头,那就是彻头彻尾的疏忽。自 1997 年起,作为一门免费的,可替代 Matlab 或 SAS 等昂贵统计软件的语言,R 被抛弃。

但是在过去的几年中,它却成了数据科学的宠儿—甚至成了统计学家、 华尔街交易员、生物学家和硅谷开发者必不可少的工具。 随着其商业价值的不断增长和传播,诸如谷歌、Facebook、 美国银行和纽约时代周刊都在使用。

R 简单易用。通过 R ,短短几行代码就可以筛选复杂的数据集,通过成熟的模型函数处理数据,制作精美的图表进行数据可视化。简直就是 Excel 的加强灵活版。

R 最大的价值就是围绕其开发的活跃的生态圈: R 社区在持续不断地向现存丰富的函数集增添新的包和特性。据估计 R 的使用者已经超过 200 万人,最近的一项 调查也显示 R目前是数据科学领域最受欢迎的语言,大约 61% 的受访者使用 R(第二名是 Python, 占比39%)。

在华尔街,R 的使用比例也在不断增长。美国银行副总裁Niall O’Connor 说:“以往,分析员通常是熬夜研究 Excel 文件,但是现在 R 正被逐渐地应用于金融建模,尤其是作为可视化工具。R 促使了表格化分析的出局。”

作为一门数据建模语言, R 正在走向成熟,尽管在公司需要大规模产品的时候 R 能力有限,也有些人说它已经被其他语言替代了。

Metamarkets 公司的 CEO Michael Driscoll 说:“ R 擅长的是勾画,而不是搭建,在 Google 的 page rank 算法和 Facebook 的好友推荐算法实现的核心中是不会有 R 的。工程师会用 R 进行原型设计,再用 Java 或者 Python将其实现。”

Paul Butler 在 2010 年用 R 构建了一个著名的 Facebook 世界地图 ,证明了 R 在数据可视化上的强大能力。然而他并不经常使用 R。

Butler 说:“由于在处理较大数据集时缓慢且笨拙,R 在行业中已经有些沦为明日黄花了 ”

那么使用什么作为它的替代呢?看下去。

Python

如果 R 是个有点神经质的可爱的极客,那么 Python 就是它容易相处的欢快的表弟。融合了 R 快速成熟的数据挖掘能力以及更实际的产品构建能力, Python 正迅速地获得主流的呼声。 Python 更直观,且比 R 更易学,近几年其整体的生态系统发展也成长得很快,使其在统计分析上的能力超越了之前的 R 语言。

Butler 说:“Python 是行业人员正在转换发展的方向。过去两年里,很明显存在由 R 向 Python 转化的趋势”

在数据处理中,通常存在规模和技巧的权衡,Python 作为一个折中出现了。 IPython notebook 和NumPy 可以用于轻量工作的处理, 而 Python 则是中级规模数据处理的有力工具。丰富的数据交流社区也是 Python 的优势,它提供了大量的Python 工具包和特性。

美国银行利用 Python 开发新产品以及基础设施接口,同时也用于处理金融数据。O’Donnell 说:“Python 用途宽广且灵活,所以人们蜂拥而至”。

然而, Driscoll 也提到它并不是高性能的语言,偶尔才会用于装配驱动大规模的核心基础设施。

JULIA

最主流的数据科学处理语言包括 R、 Python、 Java、 Matlab和 SAS。但是这些语言仍然存在一些不足之处,而Julia 正是待以观察的新人。

对大规模商用来说, Julia 还是太晦涩了。但在谈到其取代 R 和 Python 领先地位的潜力的时候,数据极客们都会变得很激动。 Julia 是一门高级的,非常快的函数式语言。速度上比 R 快, 可能比 Python 的扩展性更高,且相对易学。

Butler 说:“Julia 正在快速上升。最终将可以用 Julia 完成任何 R 和 Python 可以完成的事”。

如今的问题是 Julia 太“年轻”了。 其数据交流社区仍处在早期发展阶段,在没有足够的包和工具之前是不足以与 R 和 Python 竞争的。

Driscoll 说:“Julia 很年轻,但正在积攒力量而且未来很可观”。

JAVA

在硅谷最大的科技公司里,Java 和基于 Java 的框架构成了其底层的技术骨架。Driscoll 说:“如果深入观察Twitter,Linkedin 或者 Facebook,你会发现 Java 是他们公司数据引擎架构的基础语言”。

Java 并没有 R 和 Python 那样的数据可视化的能力, 同时也不是最好的用于统计模型的语言。但是如果需要进行原型的基础开发和构建大规模系统, Java 往往是最好的选择。

HADOOP 和 HIVE

为了满足数据处理的巨大需求,基于 Java 的工具群涌而现。 作为基于 Java 的框架,Hadoop 在批处理领域成为热点。Hadoop 比其他处理工具速度要慢,但是它非常精确且被广泛的应用于后台分析,它很好的融合了 Hive, 一个运行在 Hadoop 上的基于查询的框架。

SCALA

Scala 是另一个基于 Java的语言,和 Java 很相似,它正在逐渐成长为大规模机器学习或高级算法的工具。它是函数式语言,也能够构建健壮的系统。

Driscoll 说:“Java 就像是直接用钢筋进行搭建, Scala 则像是在处理黏土原材料,可以将其放进窖中烧制成钢筋”。

KAFKA 和 STORM

当需要快速、实时分析时怎么办?Kafka 可以帮助你。它已经发展了大概五年时间,但最近才成为一个流处理的流行框架。

Kafka 诞生于 Linkedin 公司的内部项目,是一个快速查询系统。至于 Kafka 的缺点呢? 它太快了,实时的操作也导致了自身的错误,且偶尔还会遗失信息。

Driscoll 说:“在精度和速度之间总需要做权衡,所以硅谷所有的大公司一般都双管齐下: 用 kafka 和 Storm 进行实时处理,用 Hadoop 做批处理系统,虽然会慢一点但却十分精确”。

Storm 是另一个用 Scala 写的框架,且它在硅谷以擅长流处理而受到极大的关注。毫无疑问, Twitter, 一个对快速消息处理有着巨大兴趣的公司会收购了 Storm。

荣幸的提到:

MATLAB

MATLAB 已经存在很长时间了,尽管价格昂贵,但它仍在某些特定领域被广泛使用: 机器学习研究、信号处理、图像识别等领域。

OCTAVE

Octave 与 Matlab 非常相似,只不过它是免费的。然而除了信号处理的学术圈之外很少见到使用。

GO

GO 是另外一个获得关注的新手。它由 Google 开发,与 C 有一定渊源,且在构建稳定系统方面与 Java 和 Python 展开了竞争。

]]>
TIOBE :2016年3月编程语言排行榜
//www.otias-ub.com/archives/445042.html Sun, 06 Mar 2016 12:59:23 +0000 //www.otias-ub.com/?p=445042 尽管软件行业在近年来飞速的发展,但是编程语言却没有那么快速的推进。对比10年的TIOBE榜单,你会发现尽管10年过去了,很多编程语言依然在前10名,不同的只有VB,还有就是PHP和Perl交换了位置,以及更现代化的C#,Python 和Javascript。Objective-C 在这10年中曾经一度进入前3名,但是在苹果公司发布Swift之后,它就正在被迅速替代。也许很多人由此断言未来的10年 依然很多诞生出一个体量较大的新编程语言。然而事实并非如此,看似平淡的10年,编程语言一直得进行着内部的迭代发展。比如Java 8 ,C++11 Python3 和PHP7等等,这些语言在不断发展新的特性,对于工程师而言,接受一门熟悉的编程语言的一些新特性和玩法,显然比完全去学习接受一门新的编程语言要来的轻松和容易接受。

前20名:

1457269143-1083-06073212-NElR

 

21-50名:

1457269143-5774-06073214-EqrD

1457269143-6499-06073215-EHUT

 

热门语言趋势:

1457269143-5227-06073215-7Yhz

]]>
StackOverflow:调查显示苹果Swift成最受欢迎编程语言
//www.otias-ub.com/archives/340239.html Wed, 15 Apr 2015 17:36:49 +0000 //www.otias-ub.com/?p=340239 1183677981

最近苹果手表预订火爆,再次揭示了科技行业一个规律——“苹果做什么什么都能火”。大约一年前,苹果推出了新的编程语言Swift。最近的一个程序员民调显示,该语言已经成为最受欢迎的编程语言,做到了后来居上。

最近,程序员开发问答服务网站“StackOverflow”进行了一次民调。主要针对全世界157个国家的2.6万名开发者。这些样本中,6800人为全职程序员,1900人为移动开发员,1200人为前端开发员,1.2万人为其他类型的开发者。

调查方向受访者问及,在过去一年中曾经使用什么编程语言来开发软件,哪种语言用的最多。

民调结果显示,苹果公司推出的Swift语言,以77.6%的覆盖率,在受欢迎程度上名列第一。超过了其他许多知名度较高的开发语言。

C++11语言覆盖率为75.6%,排名第二。

微软公司推出的已经有多年历史的C#语言,覆盖率仅为67.2%,在榜单中排名倒数第二。

另外一个知名度较高的Python语言,以66.6%的覆盖率,排名倒数第一。

苹果Swift语言之所以受欢迎,原因包括学习时间更短、和Objective-C语言能够兼容,另外开发速度较快。

需要指出的是,调查方也指出,调查结果可能存在一定的误差。因为中国、巴西、日本等国家的开发者,访问StackOverflow网站的活跃度略低于其他非英语国家的开发者。

在去年年中的苹果全球开发大会上,苹果正式对外发布了Swift编程语言。当时,苹果负责软件技术的高管Craig-Federighi对开发者表示,希望他们未来能够用Swift语言,取代目前的Objective-C与Python等编程语言。

据报道,这种语言可以用来为苹果电脑和iOS移动设备开发应用软件。和传统语言相比,Swift的语法更加简洁,另外可以实时预览效果。

在Swift发布前,苹果生态应用软件的开发语言主要是Objective-C,这种语言诞生已经30多岁,语法较为复杂,学习成本较高。

Swift的推出,也进一步完善了苹果软硬合一、封闭经营的“花园围墙”生态系统,提升了软件开发员的工作效率,推动了苹果平台应用软件规模的增长。

]]>
CodeForge:2014年11月“我最喜爱的编程语言”排行榜
//www.otias-ub.com/archives/296434.html Thu, 27 Nov 2014 14:51:37 +0000 //www.otias-ub.com/?p=296434 一、国内的统计情况。

国内数据来源于对CodeForge.cn用户的统计。首先,我们先看看全国范围的情况:

与前几个月的统计数据相比,11月份的统计数据中C++和C语言仍然以大比分领先其他编程语言排在前两位,二者是当之无愧的最受全国程序员喜爱的编程语言(或者说从事C++和C语言编程的人数依然占有最大比例)。Java和C#也很受欢迎,分别排在第三和第四位(C#在这个月份略有下降到第四位,Java略有上升到第三位),位次彼此调换。Matlab因其在数学计算和仿真方面的优势以及易学易用的特点,深受高校和科研院所人员的喜爱,也是很多软件工程师验证前期算法的首选工具。Objective-C虽然受到iOS程序开发的刺激,吸引了大批程序开发人员从事编码工作,但在这份喜爱程度排行榜上并不出众。尽管如此,与前期统计数据相比,Objective-C呈上升趋势。当年极其盛行的Delphi靠吃老底仍然跻身榜单之中,不过数据一直呈现下降趋势。

再来看一下来自北京,上海,深圳和广州四地被访用户的调查情况。

在不同的地区,各编程语言受喜爱程度还是略有不同。C++和C在这四个城市中都是排在了前两位。而略有不同的是,在北上广,C++受喜爱程度都领先C语言,而在深圳情况正好相反,C语言更受欢迎。这在一定程度上反映出深圳硬件和嵌入式相关产业(或许是手机产业?)发达,需要的系统和嵌入式开发人员较多。而Matlab在深圳的受欢迎程度,明显低于其他几个城市,也部分的反应了深圳由于较少高校和科研院所,所以学术和研究的气氛明显不如其他城市。

二、境外的统计情况

境外数据来源于对CodeForge.com的用户的统计。

在全球范围内,C,C++和Matlab的受欢迎程度高居榜首,位列三甲。在IT创新最活跃的美国,C++胜于C,而在软件外包大国印度,C与Java都大受欢迎。在制造业发达的台湾和韩国,C语言很受欢迎。Matlab在这几个国家和地区中,都排在前三位,其中,在印度排在第二位,这与这几个国家和地区发达的教育和科研制度是分不开的。

数据来源:CodeForge.com & Codeforge.cn

]]>
编程语言编年史–信息图
//www.otias-ub.com/archives/183805.html Wed, 01 Jan 2014 00:23:27 +0000 //www.otias-ub.com/?p=183805 我们都知道,编程语言是一组用来定义计算机程序的语法规则。它是一种被标准化的交流语言,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。尽管人们多次试图创造一种通用的程序设计语言,却没有一次尝试是成功的。之所以有那么多种不同的编程语言存在的原因是设计程序语言的初衷不同,对语言学习曲线的追求不同,不同程序之间的运行成本差异等。下面这张图片描绘了整个编程语言的历史。包括各种编程语言的发明人,编程语言的特点和适用领域,被什么网站或公司使用等。 ]]>
将会改变未来IT世界的十种编程语言
//www.otias-ub.com/archives/155160.html Tue, 24 Sep 2013 16:30:22 +0000 //www.otias-ub.com/?p=155160

Dart语言

这种语言由谷歌制造,用来替代Javascript,弥补Javascript在web应用中大量使用时出现的缺点。对于Dart语言,谷歌的希望是,它将成为web编程的新官方语言。它有着与C语言类似的语法和关键词。然而,一个跟Javascript的重大不同之处是,Javascript是以prototype为基础的语言,可Dart里对象是用类和接口定义的,跟C++和Java一样。Dart语言还允许程序员将变量声明为静态类型。

Ceylon语言

这种语言被称为“Java杀手”。是由Gavin King(Hibernate创始人,现任职于红帽)创造的,但他否认是在红帽(Red Hat)公司里开发的。Gavin King对Java的抱怨包括:罗嗦的语法,缺少一等函数(first class)和高阶函数(higher-order),对元数据编程的支持很弱。特别的,他对缺少能够声明结构化数据定义的语法非常失望,他指出这使Java只能“跟在XML屁股后面使劲”。Ceylon语言的目标就是要解决所有这些问题。

Go语言

这个大家应该都知道了,谷歌创造了一个叫做Golang或Go的编程语言。据一些技术分析家说,它将最终完全替代Java。这是一种通用型的语言,可以用来开发任何软件——从普通应用到系统编程。虽然这种语言还不成熟,各种语言特征和规格还在变化,但程序员如今已经用它来开发工作了。

F#语言

这种语言已经在计算机科学研究和学术界里流行很久了。F#(发音是“F-sharp”),是一个微软制造的语言,设计时既考虑了功能性又考虑的实用性。因为它是一种可以运行在.NET通用语言运行环境(CLR)的一等函数(first-calss)语言,它能跟其它CLR语言(如C#和VB)一样可以访问.NET平台上的所有程序库和功能特征。

Opa语言

Web开发太复杂。即使一个简单的web应用,也会包含有多种语言交织的无数代码:客户端有HTML和Javascript,服务端有Java和PHP,数据库里有SQL,等等。Opa语言并不是来替代其中的某个语言。事实上,它是想一次把这些语言全消灭掉——通过倡导一种全新的Web编程模式。在一个Opa应用中,客户端UI,服务端逻辑,数据库I/O,全部由一种语言实现——Opa语言。

Fantom 语言

你是否开发过Java或.Net应用?如果使用Fantom开发,你可以选择使用它们任何一种平台,甚至中途切换平台。这是因为Fantom语言专门是为跨平台移植设计的。Fantom工程不仅包括一个可以输出JVM和.NET CLI字节码的编译器,还包括一套从Java和.Net中提取的API,从而可以创建一个额外的可移植代码层。

Zimbu语言

这种奇特的语言从其它各种语言中吸取元素和成分,它是Bram Moolenaar的智慧结晶。Bram Moolenaar是Vim文本编辑器的缔造者。这种语言被规划为要快,简洁,可移植,易读。它的语法独特、与众不同,但功能丰富。使用C语言风格的表达式和操作符,但有自己的关键字、数据类型和块结构。它支持内存管理,线程,管道。可移植是它的核心理念。尽管Zimbu是一种编译型语言,但Zimbu编译器输出的是ANSI C代码,这样可以让本地的C编译器来把它编译成本地平台的二进制代码。

X10语言

这是一种并行处理语言,曾经只是用在特定领域里的软件开发。然而,随着多核CPU和分布式计算的普及,今天的其它编程语言都似乎跟不上这种趋势的步伐。这就是为什么IMB研究机构开发了X10语言——一种专门为现代并行架构设计的语言,目标就是要把开发效率提高“10倍”。X10语言的并行能力来自使用分块全局寻址空间(PGAS)编程模式。代码和数据被分割成小的单元,分布到一个或多个“空间”,使得将一个单线程程序升级成运行在多核处理器上的多线程程序变得简单。

haXe语言

haXe(发音是“hex”)胜过任何一种可移植的编程语言。它是一种可以应用到多种操作环境的多平台语言——从本地二进制到脚本解释器到虚拟机。程序员用它开发出代码,然后编译成目标代码,JavaScript,PHP,Flash/ActionScript或NekoVm字节码等。

Chapel语言

对于应对当今世界高性能计算的特性,Chapel是一种出色的编程语言。这种语言专门为超级计算机和集群设计的,它是Cray(超级计算机之父)的Cascade研究课题的一部分,由美国国防部高级研究计划局(DARPA)参与启动,有一个宏大的高性能计算设想。Chapel语言的语法有很多源头,除了常见的如C,C++,Java外,它还借鉴了一些科学研究性语言(比如Fortran和Matalb)里的概念。它的并行处理特征是受ZPL和High-Performance Fortran的影响,这些语言也都是Cray的早期研究项目。

 

[英文原文:10 Programming Languages That Will Change The IT World ]

来源:http://www.aqee.net/10-programming-languages-that-will-change-the-it-world/

]]>
TIOBE :2013年4月TIOBE编程语言指数排行榜
//www.otias-ub.com/archives/104910.html Tue, 09 Apr 2013 16:10:50 +0000 //www.otias-ub.com/?p=104910 TIOBE 于近日公布了2013年4月TIOBE编程语言指数排行榜。此次前三位置有变化,C 语言第一,Java 第二,C++ 重返第三,Objective-C 降至第四了。在2009年夏季,Objective-C 还是一门鲜有人知、鲜有人用的编程语言。多亏了 iPhone 和 iPad 的成功,Objective-C 开始以难以置信的速度攀升到排行榜前几位。所以 Objective-C 在 2011 年和 2012 年连续两年荣获“TIOBE年度语言”奖项。不过最近  Objective-C 的热度不再上升了。这也是它从 2009 年开始,首次有排名下降,从第三位降至第四位。

2013年4月编程语言排行榜 Top 20 具体榜单:

2013年4月编程语言排行榜前10位的长期走势图:

2013年4月编程语言排行榜21至50位排名:

2013年之前的年度编程语言
TIOBE Software Tiobe Index Programming Language of the Year

【说明】:TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新。这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引擎(诸如 Google、 MSN 、雅虎)以及 Wikipedia 和 YouTube 进行计算。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。

这个排行榜可以用来考查你的编程技能是否与时俱进,也可以在开始开发新系统时选择语言时用来进行策略性的决策。

Tiobe原文:http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
译文链接:http://blog.jobbole.com/37783/

]]>
Tiobe:2013年3月编程语言排行榜:有毒的Java
//www.otias-ub.com/archives/102133.html Tue, 26 Mar 2013 10:25:50 +0000 //www.otias-ub.com/?p=102133 Tiobe公布了新一期编程语言排行榜。Java依旧是占据第一的位置,C语言紧随其后。值得注意的Objective-C持续发力,已经占到了第三的位置。咋一看榜单,前5条中C#下滑最快,从第3名下降到第五名。而其他语言都与之前没有变化。

 

最近一段时间,关于Java安全性的新闻层出不穷。被伤害的不光是普通计算机用户,甚至还包括苹果公司、美国政府。此次安全风波波及面之广,恐怕是Oracle始料未及的。

1.黑客利用网页漏洞进行攻击

据国外安全研究机构称,当前的Java版本中包含了一个严重的安全漏洞,可能导致电脑在访问带有恶意代码的特定网页时被感染。Window系统中的所有主流浏览器都可能被利用并感染,其中也包括Chrome。该漏洞也存在于苹果最新的Mountain Lion操作系统。

为此,苹果不得不单独发布Java相关更新,以保证Mac用户的安全性。素以跨平台性强著称的Java,也让所有运用他的人无处可藏。

2.Java安全机制

Java 早期的安全框架强调的是通过验证代码的来源和作者,保护用户避免受到下载下来的代码的攻击。Java安全模型的前三个部分——类加载体系结构、class 文件检验器、Java虚拟机(及语言)的安全特性一起达到一个共同的目的:保持Java虚拟 机的实例和它正在运行的应用程序的内部完整性,使得它们不被下载的恶意代码或有漏洞的代码侵犯。相反,这个安全模型的第四个组成部分是安全管理器,它主要 用于保护虚拟机的外部资源不被虚拟机内运行的恶意或有漏洞的代码侵犯。这个安全管理器是一个单独的对象,在运行的Java虚拟机中,它在对于外部资源的访 问控制起中枢作用。

Java签名/证书机制,可以保障使用者,安全地调用外部提供的jar,防止你信任的jar被篡改。首先,Java的签 名,必须是基于jar包的。也就是说,你必须将你要提供的class,打包到jar里。然后,通过Java 提供的签名工具(jarsigner)对jar包进行签名,发布。

签名原理:使用非对称算法,生成一对公钥/私钥。

3.Oracle应对Java漏洞危机

甲 骨文软件质量保证经理Eric Maurice透露,五个漏洞中有四个存在于桌面系统的Java We Start应用和浏览器Java小程序中。其中三个被通用漏洞评分系统评为10级,这是很严重的事情:如果Java运行在Windows XP这种默认以管理员身份运行的系统,那么黑客能够利用这些漏洞完全损害系统的保密性,完整性和可用性;在Linux或者Salaris这类以非管理员权 限运行的系统中情况会好一些。安全研究人员对剩下的一个漏洞也做出过说明,该漏洞影响服务器部署的Java安全套接字扩展(JSSE),基于Lucky Thirteen攻击SSL/TLS实现。

新的Java 6 _update41可以从甲骨文网站下载,而不是Java.com,目前必须手动下载。但Java 6 安装程序的更新功能会提示用户下载并安装Java 7 _update15。这一切都在甲骨文的计划中。甲骨文之前在网站上宣布,将启动自动更新帮助Windows32位系统用户完成升级。甲骨文将加快其对 Java的修补速度。Maurice说,“甲骨文会继续加快Java更新发布速度,特别是帮助解决桌面系统浏览器的Java运行环境安全,以重树安全信 誉。”

其实这次Java漏洞危机并不是第一次,之前2010年也有报道宣称Java漏洞会影响Windows运行安全。各位用户还是尽量及时更新自己的Java,作为开发语言中举足轻重的语言,Java的安全性还是值得信赖的。

前10名编程语言走势图

20到50名语言排行

下面是第50到100的编程语言排名

(Visual) FoxPro, 4th Dimension/4D, ABC, Agilent VEE, Alice, Apex, AutoIt, AutoLISP, bc, C shell, CL (OS/400), Clipper, Clojure, Dart, Dylan, ECMAScript, Eiffel, Emacs Lisp, F#, Go, Groovy, Icon, IDL, Inform, Informix-4GL, J, JScript.NET, Ladder Logic, LPC, MEL, MUMPS, NATURAL, Oberon, OCaml, Occam, OpenCL, Oz, Pike, Q, REXX, S, sed, Simula, Smarty, SPARK, VBScript, VHDL, WebDNA, xBase, XSLT

]]>
TIOBE:2013年3月份编程语言排行榜
//www.otias-ub.com/archives/99334.html Tue, 12 Mar 2013 09:32:20 +0000 //www.otias-ub.com/?p=99334 TIOBE 编程语言排行榜发布 2013 年 3 月份的榜单,与 2 月份比较该榜单唯一有变化的就是 Ruby 语言取代 Perl 排在第 9 位。Perl 语言是否正在逐渐的跌出前十名?拭目以待!

此榜单还有另外一个关注点是 JavaScript 急剧下降!虽然当月流行度还未突破历史最低记录,但如果计算6个月平均排名,已经是TIOBE有记录以来的最低值。来自 Solidot 的评论称:

” 最新出炉的TIOBE编程语言排名中,Javascript的排名又一次下跌。虽然当月流行度还未突破历史最低记录,但如果计算6个月平均排名,已经是TIOBE有记录以来的最低值。对比HTML5的google trends记录你会惊讶地发现js流行度与HTML5关注度竟然成反比。

虽然全世界都把希望寄托在HTML5,但是js老旧的语法特性实在难当此大任。为此Google推出了Dart,微软推出了TypeScript,都希望用来弥补js的缺陷。但这些都不可能代替js,类似的尝试早在2008年的ECMAScript4就曾惨遭失败,在js的世界,任何可能破坏兼容的改进都是无法接受的。

这个问题导致那些习惯面向对象,不愿使用js的程序员们宁可以其他语言编写代码,将js看作编译结果。除了Dart和TypeScript以 外,CoffeeScript,Fantom, HaXe,Opa等多种语言也都在语言设计之初就将js设定为编译目标。这不但对js开发造成了严重的碎片效应,还因为二次编译给本就性能不佳的js带来 进一步的损失。”

完整的排名数据请看:

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

]]>
TIOBE: 2012年度编程语言排行榜
//www.otias-ub.com/archives/77330.html Tue, 06 Nov 2012 16:23:37 +0000 //www.otias-ub.com/?p=77330 还有两个月 TIOBE 就要宣布 2012 年度编程语言了。Objective-C 这个月第一次跨越了 10% 的门槛,并且持续走强。其他的移动编程语言例如 C,C++,Java的增长并不能和 Objective-C 相提并论。而另外一个竞争对手 C# 却有明显的下降趋势,原因不明。看起来已经没有什么可以阻止 Objective-C 再度当选年度编程语言了。

 

11月份编程语言排行榜

 

//www.otias-ub.com/wp-content/uploads/2012/11/16291106134450042.png
长期走势图


历年年度编程语言

]]>
TIOBE:2012年10月编程语言排行榜
//www.otias-ub.com/archives/71924.html Mon, 08 Oct 2012 15:04:31 +0000 //www.otias-ub.com/?p=71924 本月编程语言Dart挤进入TIOBE排行榜前50名,占据第43名,这也是头一次Dart有这么好的表现。Dart是一门专为开发客户端Web应 用而设计的编程语言。起初,谷歌推出Dart目的在于取代JavaScript。如今微软、苹果、Mozilla公司已宣布各自浏览器支持Dart,这无 疑对于Dart来说是件好消息。未来Dart发展如何,让我们翘首以盼。

 

前20名榜单排行榜:

前10名编程语言走势图:

以下是21-50编程语言排名:

后50名的语言如下:

必须声明,这个榜单本身采集的是英文世界的数据,虽然在反映趋势上有一些参考意义,但与中国的实际情况不完全符合,而且,这张采样本身也有相当大的局限性。

]]>
2012年9月编程语言排行榜榜单
//www.otias-ub.com/archives/71402.html Wed, 03 Oct 2012 15:53:41 +0000 //www.otias-ub.com/?p=71402 2012年9月编程语言排行榜榜单


 

Java没死,事实上它拥有足够的能量让你的应用跑起来。那些对Java吹毛求疵人频繁地聚焦在一些小众问题上,总是和其他技术或者语言做些不公平的对比,这些语言并没有像Java一样得到广泛应用及长远的历史。

再看8月编程语言就业趋势


从长期来看,C#和Java都有强势的增长,而其他语言在停止不前。虽然从短期来看Java呈现出了下滑的趋势,但是仍然领先于其它一些编程语言。JAVA语言作为云计算的主力支持语言呈现出来的简单、高性能、安全等特点将会更好完全发挥云计算高可靠、高拓展的优势。Android是利用Java语言为基础进行开发的,所以Java就业方向又多了一个,就是Android手机开发。

Java是一门强类型静态语言

强类型静态语言有很多好处,我喜欢它简单的视觉外观,我可以粗略看一段代码就知道是做什么的,它就像是可视化的用英语反馈,语言非常易读,字母混合成单词仍然可读。其它的一些好处是有强大的IDE支持,动态语言在这点一直是弊端,大项目中有强大的IDE和工具支持是无价的。

批判者的观点在Java在读文件、转换xml或迭代集合的时候缺乏表达力,但是你可以总是创建一个方法去处理这些常用的事例,或者是用 FileUtils.readLines(),java语言上表达力的缺点有很多库对其支持。在Java7中能看到一些优雅的加强型功能,如自动关闭资源、siwtch语句支持String、数字类型支持下划线(强烈建议读Coin 项目)。Java8承诺了更多的东西(最有意思的应该是闭包)。Java是不是在任何方面都是那么的完美无缺呢?当然不是,这就是Java8、Java9 在准备阶段的原因。我个人也不喜欢那些不太优雅的核心API.是否的确将更多的事情留给平台而不是语言本身?java核心包括API进阶设计跨度长达20 年,API的更新会破坏向后兼容性,有些设计太抽象,但有些还不够抽象,有些太零碎,有些根本不可思议。看看其竞争对手.NET,核心API做的很好,比如统一的通信API。Java8在Jigsaw项目的帮助下,会有所改变。

所以你值得拥有Java,正确地使用它,它是一门很棒的语言。堪比Klingon语言,它将继续改善并不会很快消失。不应把努力放在取代Java上,而是和其他JVM语言结合使用,这是最明智的,但是对我的下一个Pet Clinic 还是坚持使用Java。

]]>
Indeed:2012年8月编程语言就业趋势
//www.otias-ub.com/archives/65741.html Tue, 28 Aug 2012 14:44:03 +0000 //www.otias-ub.com/?p=65741 这是整个夏季的就业趋势,看看你所喜欢的语言处于怎样的阶段。先来看看Indeed.com的就业趋势。大部分语言的趋势都在下滑。OBJ-C继续保持增长,C#有显著的下滑,但仍然领先于C++。从长期来看,C#和Java都有强势的增长,而其他 语 言在停职不前。目前的移动开发领域很红火,作为iOS的语言OBJ-C做了领头羊。C++和Perl有略微的下降,但并不是很明显。

再来看看SimplyHired的短期走势。

有趣的是,这里的OBJ-C并没有积极向上,但并其它语言的走势要好。Java在近几个月出现了大幅的下滑,但仍然大幅领先于其他语言。C++和 C#在过去的一年有几乎相同的趋势,在最近几个月都出现了下跌。

最后看下Indeed.com的相对图。

Obj-C增长最快,但已经放缓。C#增长是稳定的,在过去3年徘徊在100%左右.Visual Basic和C++继续下降。Perl和Java是仍然增长的迹象,但不是很显着。

这意味着什么?首先,移动开发非常火,但移动开发并没有积极影响Java的上升。为什么Java是相对增长,却不明显,主要是招聘帖子比以前少 了,需求并没有从前那么旺盛。

]]>
TIOBE:2012年8月编程语言排行榜
//www.otias-ub.com/archives/62699.html Sun, 12 Aug 2012 15:00:30 +0000 //www.otias-ub.com/?p=62699 TIOBE 于11日公布了8月份编程语言排行榜,C 语言继5月份超过JAVA之后,已经占据榜单冠军之位4个月,而且份额还在继续再增加,展现出长期称霸的冠军像 。JAVA、C++的份额持续下滑,OBJECT-C 稳步上升,代表 IOS开发方兴未艾。PHP上个月下滑到第七位,这个月又回到第六位,与第七位的VB显得比较胶着。其他语言变化不大。


Object-C 占据探花位置已经第二个月,而且还在上升,代表iOS开发方兴未艾。软件开发经历了从C/S形式到B/S形式的转变,现在正在经历向移动端转移的趋势。包括Object-C、Android等越来越红火。

而C++的份额持续下滑,C++跨平台开发库Qt于7月被诺基亚正式售出给一家芬兰软件公司Digia,诺基亚和Digia均未透露交易金额。但分析师认为,成交价将远低于诺基亚2008年收购QT时付出的1.5亿美元。

前10名编程语言走势图

21-50编程语言排名:

数据来源:TIOBE

注:TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新。这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引 擎(诸如Google、 MSN 、雅虎)以及Wikipedia和YouTube进行计算。请注意,这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门 语言所编写的代码数量多少。这个排行榜可以用来考查你的编程技能是否与时俱进,也可以在开始开发新系统时选择语言时用来进行策略性的决策。

]]>
Udemy:流行的编程语言之战—数据信息图
//www.otias-ub.com/archives/24114.html Mon, 13 Feb 2012 15:07:37 +0000 //www.otias-ub.com/?p=24114 Udemy制作了一份信息图,将当下流行的编程语言Ruby, PHP和Python放在一起进行比较。首先从语言版本、设计初衷、易用性和易学性方面进行了简要对比,接着从专业领域的流行度、市场的流行度和编程语言速度三方面进行比较。

]]>
[信息视图]PHP、RUBY和PYTHON,三大语言大战
//www.otias-ub.com/archives/23046.html Sat, 28 Jan 2012 06:04:53 +0000 //www.otias-ub.com/?p=23046 现代编程语言的战争-PHP、RUBY和PYTHON

下面这张图从各个角度对比了这三种语言的优势和劣势:

设计目的:PHP转为动态网页设置打造;RUBY设计的目的是为了让编程更具乐趣和可塑;Python是为了提升代码效率和可读性

可用性方面:PHP是跟随了老的方法和传统,可用性要弱些;Ruby编写的代码优雅、强大和表达性好,可用性极高;Python可用性居中

学习难易程度:Python最容易,其次是PHP和Ruby

流行程度来看,2011年12月,PHP在这几种语言中,程序员首选最高为6%;Ruby和Python分别为1.5%和3.5%

从讨论最热门的语言来看,Python最高,为11%

从市场热度来看,PhP的职位最为抢手,占21%

从代码效率来看,代码行数PHP表现不错,运行时间上Python最短

 

]]>