当前位置: 首页 > article >正文

过去8年,编程语言的流行度发生了哪些变化?PHP下降,Objective-C已过时

前天有一个汇总9个不同排名数据的“地表最强”编程语言排行榜,为了更好地理解语言流行度的变化,作者将2016年的类似调查结果与2024年的数据进行了比较。

虽然2016年的调查只包含6个排名,但它仍然提供了宝贵的参考数据。

我们来看看详细的情况。

11

热门语言

Python凭借其简洁性和强大的功能,成为AI、数据科学和Web开发的首选语言,稳居榜首。

JavaScript在Web开发领域持续占据重要地位,尤其是在创建动态网页方面。

React和Angular等框架进一步扩大了其适用范围,使其超越其他语言。

始终如一的执行者

Java、C++、C#和C这些基于C的语言代表了经典编程的精髓。

它们在算法编码领域仍然发挥着重要作用,并且在流行度方面没有发生显著变化。

Java虽然在我们的指数中下降了两个位置,但仍然处于领先地位。它被广泛用于企业应用程序和Android开发。

C++作为C的扩展,增加了面向对象的功能。它仍然是需要高性能和面向对象结构的编译应用程序的首选语言。

C#作为微软对C++的演绎,在Windows应用程序和游戏开发中占据重要地位。

C尽管历史悠久,但依然在操作系统开发、编译器和嵌入式系统领域发挥着不可或缺的作用。

新上榜的语言

TypeScript、Rust、Kotlin和Dart在2016年的调查中并未出现,但在2024年的榜单中崭露头角。

TypeScript作为JavaScript的超集,添加了静态类型,提高了代码质量和可维护性,使其越来越受欢迎。

Rust专注于内存安全和性能,在系统编程领域受到青睐。

Kotlin作为Java的增强版,提供了更简洁的语法和强大的功能,并被Google选中为Android的首选语言。

Dart和Flutter致力于移动UI开发,在跨平台部署方面表现出色。

冉冉升起的新星

Go作为Google开发的静态类型语言,在构建可扩展的并发应用程序方面表现出色,在云计算、微服务和容器化领域已经很受欢迎。

接下来的几种语言在之前的文章中引起了一些争论,一些程序员声称它们甚至不是真正的语言,因为它们没有典型的算法编程功能。

我之所以将它们包括在内,是因为它们包含在我汇总的调查中。

SQL作为数据检索语言,随着数据量的增长,其重要性也日益凸显。

HTML和CSS可能永远不会过时。因为它们在网页开发中不可或缺,随着数字化转型的加速,其需求也随之增加。

Shell编程是一种用于对程序序列进行编程的工具,自古以来就存在。

所有主要操作系统都存在Shell编程形式,但在复杂的系统环境中需要越来越多的自动化和编排,这使得这些老式工具保持相关性并不断发展。

流行度下降的语言

流行度下降的语言包括PHP、Ruby、Swift和R。

尽管PHP在WordPress开发中广泛使用,但它是一种非常不优雅的语言。它功能强大,但丑陋且容易出现不必要的错误。随着Python的增加,它的受欢迎程度正在下降。

Ruby是另一种在阳光下发展的语言。

JavaScript,特别是与Node.js、Python、Go、TypeScript和Rust的组合,都是更灵活、更强大且代码安全的替代方案。

R作为统计语言,但它能做的,Python也许可以做得更好。

Swift虽然是Apple iOS开发的首选语言,但其他开发平台的出现也为开发者提供了更多选择。

从排行榜上掉下来的语言

Objective-C从排行榜上掉下来是有道理的。这曾经是Apple设备的主要编程环境,但Apple主动用Swift取代了它。

所以,从本质上讲,Objective-C已经过时了。

Perl尽管功能强大,但它的代码非常紧凑,几乎无法阅读。这也使其更难维护,这使其受欢迎程度下降。

Visual Basic和Delphi曾经是构建Windows应用程序的主流语言,但它们已被某些应用程序的Web开发和C#其他所有语言所取代。

🔗原文链接

https://www.zdnet.com/article/the-rise-and-fall-in-programming-languages-popularity-since-2016-and-what-it-tells-us/


http://www.kler.cn/news/323370.html

相关文章:

  • Vue.js 与 Flask/Django 后端配合开发实战
  • 【Matlab使用Transformer一维序列分类源程序】
  • 0基础学前端 day5
  • 基于SSM+小程序的在线课堂微信管理系统(在线课堂1)(源码+sql脚本+视频导入教程+文档)
  • Android常用C++特性之std::none_of
  • 【数据结构和算法实践-排序-快速排序】
  • 使用canvas截取web camera指定区域,并生成图片
  • 数据结构之——栈
  • 【Kubernetes】常见面试题汇总(四十)
  • EasyExcel 多个不同对象集合,导入同一个sheet中
  • gMLP:Pay Attention to MLPs--模型代码讲解
  • 数字通云平台智慧政务 login 存在登录绕过
  • Java | Leetcode Java题解之第435题无重叠区间
  • E9OA解决文档附件没有关联文档正文问题
  • 54K55LyB5p2l5a6i5pyN57O757uf token硬编码漏洞
  • Spring源码学习:SpringMVC(2)DispatcherServlet初始化【子容器9大组件】
  • 对于 Vue CLI 项目如何引入Echarts以及动态获取数据
  • 机器学习-SVM
  • xxl-job 适配达梦数据库
  • StarRocks Elasticsearch Catalog原理简析
  • 【机器学习】目标分类算法概述
  • UI设计师面试整理-作品集展示
  • 基于Hive和Hadoop的招聘分析系统
  • GUI-窗口,模态窗口,拖动窗口
  • centos离线安装nvm
  • 2024新版IDEA创建JSP项目
  • 查看和升级pytorch到指定版本
  • 如何让 Android 的前端页面像 iOS 一样“优雅”?
  • 从 ES5 到 ES14:深入解析 JavaScript 的演进与特性
  • 828华为云征文|部署去中心化网络的 AI 照片管理应用 PhotoPrism