写点什么

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:0019048

评论 3 条评论

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

maven-dependency中作用域scope含义

一个大红包

9月日更

APM领域国产化先锋!博睿数据与麒麟、统信、中科方德完成兼容性认证

博睿数据

活动推荐 | 云原生社区 Meetup 第七期深圳站开始报名啦!

CODING DevOps

Kubernetes DevOps 微服务 活动 Meetup

谁在制造“完美男性”?

脑极体

ULP Fec与 Flex FEC 概述

webrtc developer

WebRTC fec

我怀疑,你对996的力量一无所知!

艾小仙

程序员 996

Vue进阶(幺零四):elementUI 应用 $notify 提示信息中换行问题

No Silver Bullet

Vue 9月日更

用数据搭建反馈系统

石云升

数据分析 9月日更

微信亿级用户异常检测框架的设计与实践

OpenIM

前端独立交付需求背景下的Mock数据多方案解读

爱数技术范儿

JavaScript 大前端 Mock

防沉迷系统的bug,技术如何查漏补缺?

脑极体

垃圾分类与AI的反碎片之旅

百度大脑

人工智能 EasyDL

各编程语言里对 Iterator 进行修改时的对比

BlockQuant

Java Python rust Go 语言

北鲲云超算平台赋能蛋白设计助推生物制药行业发展

北鲲云

总结下ThinkPHP的代码审计方法

网络安全学海

php 网络安全 信息安全 WEB安全 代码审计

博睿数据云主机性能评测新增6家云厂商,8月报告亚马逊云科技登榜首

博睿数据

微信开源PhxQueue:高可用、高可靠、高性能的分布式队列

OpenIM

Python代码阅读(第25篇):将多行字符串拆分成列表

Felix

编程 Code Programing 阅读代码 -python

Frida笔记 - Android 篇 (一)

GrowingIO技术专栏

android Frida

Python顺序结构选择结构

在即

9月日更

justswap市值管理机器人系统软件开发技术(案例搭建)

量化系统19942438797

交易所 做市机器人 justswap

HashMap为什么是线程不安全的?

Java技术精选

开源之夏项目分享:图数据库 Nebula Graph 支持 JDBC 协议

NebulaGraph

性能测试中异步展示测试进度

FunTester

性能测试 接口测试 测试框架 进度条 FunTester

ServiceWorker工作原理、生命周期和使用场景

devpoint

Service Worker 9月日更

HTML进阶

Augus

html 9月日更

Java 操作 Office:POI word 之表格格式

程序员架构进阶

Java Apache POI 9月日更 word文档

腾讯云签约广州知识城商用密码项目,助力黄建设密码产业示范区

腾讯安全云鼎实验室

腾讯云 商用密码

五行兼备:联想TruScale服务的太极之道

脑极体

低代码开发:实现传统系统信息化的3种方案!

优秀

低代码 低代码开发

Java中对千万级数据量的表进行插入操作(MYSQL)

张音乐

Java MySQL JDBC 9月日更

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