写点什么

GitHub 发布 2018 编程语言 TOP10:JavaScript 独领风骚,Ruby 排名下降

  • 2018-11-19
  • 本文字数:1354 字

    阅读完需:约 4 分钟

GitHub发布2018编程语言TOP10:JavaScript独领风骚,Ruby排名下降

有许多方法可以检验编程语言的流行程度。在 Octoverse 报告中,我们统计了公共和私有存储库每个贡献者使用的主要语言,以及使用主要语言创建和标记的存储库的数量。

2008-2018 年创建存储库数量最多的编程语言


现在,使用 JavaScript 创建的存储库比任何其他语言都多。在过去的十年里,使用 JavaScript 创建的存储库数量一直在稳步上升,在 2011 年之后上升趋于稳定。此时,GitHub 总共拥有近 100 万个存储库,而新的 JavaScript 服务器如 Node.js(2009 年推出)让开发人员可以为客户端和服务器使用相同的代码。

截至 2018 年 9 月 30 日,贡献者使用最多的编程语言


JavaScript 也是公共和私有存储库中贡献者使用最多的语言,这在全世界任何地方的任何组织中都是如此。但是,我们也看到了 GitHub 上新语言的兴起。去年,TypeScript 进入了所有地区公共、私有和开源存储库编程语言 Top10。像 DefinitelyTyped 这样的项目可以帮助人们使用常见的 JavaScript 库和 TypeScript,推动其采用率。


我们也看到一些语言变得不那么受欢迎了。Ruby 在过去几年的排名下降。虽然使用 Ruby 编写的贡献者数量仍然在增加,但其他语言(如 JavaScript 和 Python)的增长速度更快。新项目不太可能用 Ruby 编写,特别是个人用户或小型组织的项目,他们更有可能用 JavaScript,Java 或 Python。

截至 2018 年 9 月 30 日,语言趋势地理分布(按贡献者使用)


在过去的 12 个月中,我们发现各地区使用的编程语言没有太大​​差异。但是,TypeScript 在南美洲和非洲的排名高于北美和欧洲。这可能是因为非洲和南美的开发者社区相对较“年轻”。去年在非洲和南美洲贡献的存储库总体上来说比北美和欧洲的存储库更“年轻”。也许这意味着他们更有可能专注于更新的开发者技术。

截至 2018 年 9 月 30 日,发展最快的语言(按贡献者使用)


PowerShell 被很多大公司的项目采用,在榜单中名次攀升。同样,Go 在各大公司的不同类型存储库中排名也上升,今年在开源存储库中排名第 9。此外,在线程安全性和互操作性上更有保证的静态语言也更加受欢迎,如 Kotlin,TypeScript 和 Rust 增长迅速。


那么,是什么因素让这些编程语言在 2018 年火起来的?我们认为有以下几个原因:


线程安全


除了 Python 之外,静态语言类型在增加,这可能是因为它能够为个体开发人员和团队开发更大的应用程序提供更高的安全性和效率。TypeScript 的可选静态类型加上了一层安全保障,特别是 Kotlin 提供了更强的交互性,同时创建了值得信赖的线程安全程序。


互通性


TypeScript 在榜单中排名上升的部分原因是它能够与 JavaScript 共存和集成。Rust 和 Kotlin 的排名也在上升。Python 的多功能性和互操作性也让人印象深刻,例如,开发人员可以直接从 Swift 调用 Python API。


互操作性不仅意味着语言能够为之前的社区使用和构建,还意味着他们可以“跨界”并融入不同的社区。


开源


当然,这些语言也都是开源项目,得到了 GitHub 的积极维护。那些帮助 Kotlin 等新语言改进、回答问题和创建资源的社区,可以促进未来社区之间的合作。


原文链接:


https://blog.github.com/2018-11-15-state-of-the-octoverse-top-programming-languages/




会议推荐:12 月 20-21,AICon 将于北京开幕,在这里可以学习来自 Google、微软、BAT、360、京东、美团等 40+AI 落地案例,与国内外一线技术大咖面对面交流。


2018-11-19 09:0019052

评论 3 条评论

发布
用户头像
c#
2018-11-22 16:17
回复
用户头像
js
2018-11-21 19:28
回复
用户头像
go...
2018-11-19 17:45
回复
没有更多了
发现更多内容

模块五作业 - ”微博评论“的高性能高可用计算架构

张大彪

架构实战营 模块五:课后作业

Ahu

架构实战营

用实例带你了解 MySQL 全局锁

架构精进之路

MySQL 锁机制 6月日更

【LeetCode】左旋转字符串Java题解

Albert

算法 LeetCode 6月日更

架构训练营 - 模块五作业(评论微博)

冬天的树

设计微博系统中”微博评论“的高性能高可用计算架构

Vincent

架构训练营

架构训练营作业5

梦寐凯旋

架构训练营

3种面向“对象”编程,你是哪一种?

凌晞

架构 研发管理

区块链应用操作员国标出台 相关课程及教材正在编制中

CECBC

大数据分析与运营(一)

soho

架构实战营 - 模块 05 作业

架构实战营

公司如何做计划?

石云升

创业 职场经验 6月日更

第五次作业

Geek_9cf7b5

架构实战营 - 模块5- 作业

笑春风

微博系统中”微博评论“的高性能高可用计算架构

唐江

架构实战营

W1 linux操作系统基础

Kevin

运维 操作系统

我不信有Java程序员没犯过这10个SQL错误

北游学Java

Java sql

网络攻防学习笔记 Day37

穿过生命散发芬芳

网络攻防 6月日更

记一次 go-micro 服务异常退出问题的根因分析

ccx

【Flutter 专题】111 图解关乎 SQL 数据库的二三事 (二) 之【小封装】

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

Kubernetes手记(3)- 核心组件/附件

雪雷

k8s 6月日更

☕【JVM技术探索】字符串常量池之G1回收期的驻留机制

码界西柚

Java JVM 字符串常量池 6月日更

大数据分析与运营(二)

soho

微服务架构实施原理详解

xcbeyond

微服务 6月日更

区块链拓宽实验艺术边界 新技术如何重塑现代美学想象?

CECBC

技术人员需要建立个人影响力么?

escray

学习 极客时间 朱赟的技术管理课 6月日更

# 架构实战营-作业5

大可

揭秘苹果应用审核团队(史上最全版)

37手游iOS技术运营团队

ios apple Apple Developer iOS Developer 苹果退款

Crontab中文表达式解析

Java crontab

微博评论高性能高可用计算架构设计

Hesher

架构 Architecture 架构实战营

中小银行数字化转型的路径和建议

CECBC

GitHub发布2018编程语言TOP10:JavaScript独领风骚,Ruby排名下降_编程语言_GitHub_InfoQ精选文章