JFrog的
软件工件的现状:

2023年1月

当今使用的领先软件组件为您的2023项目提供信息

介绍JFrog的软件工件的联盟状态

Stack Overflow的开发者调查和Tiobe索引等工具是IT和软件领导者了解最新开发趋势和在启动新项目时考虑的编程设计偏好的有用资产。这些报告也可以帮助开发人员或DevOps工程师在决定如何提高他们自己或他们的团队技能时参考。然而,这样的报告只依赖于间接数据,如调查、GitHub回购或谷歌趋势,这并不一定能提供在生产和/或企业中实际运行的语言的全貌。

由于我们无与伦比的软件包支持的深度和广度以及庞大的客户群,JFrog在详细描述用于创建今天终端用户消费的软件的实际技术方面处于独特的地位。JFrog在全球拥有超过7K的客户,从单个用户到最大的企业,包括财富100强中的大多数企业,JFrog的软件工件联盟状态提供了软件包流行程度和采用趋势的可靠快照。

为什么软件包很重要?

查看编程语言的流行程度是开发人员偏好和趋势的一个指标,但包和二进制文件才是企业从设计到生产交付软件所使用的真正组件。考虑到大多数包类型最多只服务于一种或两种语言,查看软件包也是一种相当可靠的编程语言代理。

方法

用于这些排名和分析的数据直接从使用中收集JFrog Artifactory至2022年10月,来自:
~ 7 k
JFrog客户
~ 27 k
Artifactory服务器
~ 4.2米
Artifactory存储库
pb
工件的
数十亿
工件动作
(下载/上传)
85%
财富100强之一
包的流行程度取决于维护的存储库总数以及针对给定包类型所采取的操作。
少数企业可能会通过为任何给定的包创建无限数量的存储库来歪曲这些排名,但是,因为我们也查看工件操作,我们可以安全地得出哪种包类型正在作为开发过程的一部分被积极使用。

发现

顶级软件技术
排名 包类型 回购计数 年增长率
1 码头工人 1330329年 10.11%
2 Maven 1183167年 18.79%
3. Npm 313992年 19.61%
4 百胜 307549年 10.36%
5 244582年 33.67%
6 Pypi 206830年 29.51%
7 NuGet 172989年 31.54%
8 Debian 114737年 21.56%
9 Gradle 62842年 22.80%
10 GitLfs 48734年 26.34%
11 40481年 29.10%
12 宝石 34292年 17.93%
13 柯南 23423年 29.64%
14 艾薇 21537年 19.90%
15 Conda 20247年 23.78%
16 SBT 17262年 16.82%
17 作曲家 12909年 38.74%
18 凹口 12151年 36.15%
19 鲍尔 12124年 8.36%
20. P2 10771年 5.48%
21 厨师 10547年 14.27%
22 CocoaPods 9011年 28.39%
23 流浪的 8424年 11.53%
24 木偶 6360年 21.97%
25 高山 5535年 49.81%
26 风投公司 4961年 18.48%
27 锈(货物) 4205年 67.13%
28 Opkg 2993年 32.31%
软件技术趋势
点击下面的按钮过滤趋势结果。

的见解

容器为王

容器化应用程序已经改变了我们将软件捆绑并交付给最终用户的方式。Docker容器和Helm Charts使用的快速增长(从2020年1月到2022年10月分别增长了5倍)表明,组织采用云原生方法来解决问题是多么普遍DevOps

虽然Kubernetes早在2013年就已经出现了,但直到最近才开始成为大型组织将容器部署到生产中的解决方案——而且目前它仍处于成熟阶段——所以请继续关注进一步的发展。

为物联网和边缘做好准备

IDC预计,到2025年,连接设备的数量将增长到416亿台,产生超过74.9泽字节的数据。物联网和数据放置).组织需要一种向边缘设备交付软件的策略。C/ c++是设计在物联网设备上运行的软件时使用的主要语言,因为大多数都是基于微控制器的。Conan是一个常用的C/ c++部署管理器,它可以更容易地向边缘和物联网设备交付更新,因为它是基于打包的,而不是使用标准依赖库管理。这有助于加快物联网设备软件开发的速度和一致性。

从2020年1月到2022年12月,我们看到柯南的使用率增加了5倍,这可能表明更多的公司正在为边缘设计。

守旧派势力强大

虽然人们对Rust (Cargo)等年轻的编程语言有很多兴趣,但你不能否认Java、JavaScript、Python和C/ c++等传统语言在现代软件开发中的作用。例如,我们的数据显示,超过90%的组织维护Maven回购,这清楚地表明组织并没有放弃使用传统语言。

确保内存安全

糟糕的内存管理是许多漏洞的原因。甚至美国政府的国家安全局也敦促组织在构建应用程序时转向内存安全语言。安全正向设计只是开发人员对利用Rust (Cargo)、Swift和Go等年轻语言感兴趣的众多原因之一。例如,Rust本质上是以内存管理为标准构建的,它还具有更高的安全性,具有“零bug”,这意味着它的设计使开发人员在编码时意识到任何潜在的问题。然而,甚至Rust也有它的挑战并且需要持续的监控。

从2022年1月到2022年10月,Rust (Cargo)仓库的数量增加了30%。现代语言,如Rust、Swift和Go,通过提供内置安全机制的更好的包风格开发,被设计得更加可靠。使用内存安全语言的愿望也可能是受到Log4Shell、Solar Winds和其他有害软件供应链攻击的广泛影响和教训的驱动。



《Terraform: IaC的标准

自从5月份引入支持以来,我们已经看到Terraform存储库的快速采用——这是我们引入的所有新包类型中增长最快的轨迹之一。组织看到了将这些文件的管理从Git和其他存储选项转移到功能齐全的基于二进制的管理解决方案的好处,该解决方案可以保持Terraform文件的安全性,并与部署和运行软件所需的其他组件一起随时可用。

奖金的见解关于开发组织中的包使用趋势

除了包在开发人员中的受欢迎程度之外,JFrog还想研究开发组织中包的使用情况通常是什么样的。,有多少包类型被利用,工件的种类和大小,加上任何组织中开发人员的平均数量。以下是基于这些数据的一些额外见解。

发展是多语言和多技术的

今天的扩展软件供应链涉及多种技术和语言,可以跨内部部署、云和混合环境交付应用程序。从不同规模和跨行业的公司的广泛样本中得出,通常平均有7种或更多独特的包装类型在使用。在规模较大的组织中,这一中位数会增加,在一家公司中使用29种不同的包装类型。
软件交付中使用的包类型的数量

较大工件的更高容量

随着使用Docker和Kubernetes等容器化技术的组织呈指数级增长,工件大小的增加也就不足为奇了。此外,更大比例的组织也在维护更广泛的工件阵列。
管理的工件总数
由GB管理的工件总数

更多用户,更多回购

随着组织的发展,他们倾向于利用更多的回购来保持工件的组织和安全。具有受治理的基于角色的访问控制的适当存储库策略有助于保持开发团队的一致性,并确保按需访问广泛使用的通用软件组件。
开发组织的规模
所管理的包类型的数目

2023年软件包趋势预测

不可否认,大流行加速了所有行业向云的迁移,这相应地增加了Kubernetes (K8s)等云原生技术和Docker等容器化方法的使用。此外,现在员工们正在返回办公室,越来越多的市民回到“路上”,我们将继续看到云计算、协作工具的使用增加,以及越来越多的设备被远程使用和在路上使用。

这一趋势将继续推动云原生技术的使用,这给开发人员带来了越来越大的压力,他们必须迅速交付新的、移动优先的特性和功能,同时确保它们始终是安全和最新的。Gartner研究表明,到2025年,超过85%的组织将采用云优先原则,如果不使用云原生架构和技术,将无法完全执行其数字战略。1不要被你的竞争对手远远甩在后面。

从人才的角度来看,这可能意味着你的UX、云原生或移动优先设计团队需要一些额外的开发人员。虽然仍有一些行业由于业务和/或数据位置、数据隐私/主权、监管要求等原因,向云迁移的速度较慢,但随着软件包的种类、数量和大小的持续增长,向云和采用k8的整体转移将继续加速。我们还可能会看到越来越多的公司利用Terraform等框架来利用云基础设施的动态特性。

从我们自己的数据以及行业和经济趋势来看,考虑到用于支持加密货币、元宇宙、云游戏和区块链等技术的工件的种类和大小的增加,我们预计Docker和容器的使用率将保持强劲增长。

虽然对“元世界”还没有定论,但我们看到许多组织在这一领域通过增加工件大小、c++、Python和Rust (Cargo)的扩散以及容器化技术进行试验。与此同时,c++、Python和Java使用的增加也标志着区块链技术的更广泛的开发和使用,这将与业界对安全性的强烈关注相一致,更具体地说,是确保软件供应链的安全。Rust、Java和JavaScript等传统语言的流行,也标志着许多组织正在推动下一代互联网服务,使用去中心化的web基础设施来创建新的应用程序工作流。

简而言之,考虑到由各种软件语言支持的许多不同的用例,公司应该寻找一个全面的通用平台,允许他们从端到端管理整个软件供应链,同时促进协作、可伸缩性、一致性和安全性。

* https://www.gartner.com/en/newsroom/press-releases/2021-11-10-gartner-says-cloud-will-be-the-centerpiece-of-new-digital-experiences

要么快速释放,要么死亡

想要更深入地了解数据?向我们的专家提问?
加入我们将于2月28日周二举行的关于这份报告的网络研讨会。