写点什么

「顶级编程语言」Python,名不副实?

  • 2022-06-17
  • 本文字数:1750 字

    阅读完需:约 6 分钟

「顶级编程语言」Python,名不副实?

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

Python 虽然现在可能已经是世界上最顶级的编程语言了,但它不会持久流行下去。本文将解释其原因。


Python的时代从来没有这么好过。


根据TIOBE指数,该语言目前被列为世界上最受欢迎的编程语言——这一位置反映了其过去20年来的稳步增长


这种增长源于多种因素。其中一个原因是,尽管Python出身卑微,最初只是作为一种增强的Shell脚本语言,但它已经发展成为一种最通用的动态语言。从 Web 开发到物联网(IoT)编程,再到人工智能(AI)以及其他领域,它都有被应用。另一个原因是 Python 代码非常容易编写和执行,这使得 Python 成为编程入门课程的首选语言。基本上,每个在大学上过编程入门课程或参加过编程训练营的人,现在都在学习 Python。


相关阅读:最流行的编程语言:2022年哪些热门,哪些冷门


然而,我也想知道 Python 的鼎盛时期能持续多久。当然,这门语言本身并没有什么问题,但在某种程度上,我对它能够成为如此受欢迎的语言而感到惊讶,并且我对 Python 是否会在 10 年或 20 年后仍是顶级编程语言有点怀疑。


你可能会问为什么?好吧,这里有四个原因可以解释为什么 Python 的受欢迎程度名不副实。

Python 不够快


相关阅读:Java 18带来了加速软件开发的新特性


可以说,这种编程语言最大的缺点是用 Python 编写的应用程序不够快。至少,它们的速度远不及用 C 甚至不如用Java(Java 本身并不是一种特别快的语言)编写的代码快。


出于这个原因,我担心用 Python 编写这么多代码会有点搬起石头砸自己的脚。代码可能很容易编写和部署,但是我们牺牲了速度、效率和性能。在一个每一毫秒都很重要的世界里,Python 不是一个很好的选择。


十大编程语言<br>来源:TIOBE指数
编程语言2022 4月2021 4月
Python13
C21
Java32
C++44
C#55
Visual Basic66
JavaScript77
汇编语言88
SQL910
PHP109

Python 的语法太死板


Python 如此受欢迎的部分原因是,它需要一种真正的特定语法,尤其是对于编程新手来说。这种语法恰好导致了非常简洁且易读的代码。


如果你不介意花时间遵循 Python 的所有语法规则,那么这非常好。但是,如果你只是想快速地编写代码,Python 可能就不是最好的语言了。


因此,如果我们想优先考虑灵活性和动态性,而不是让每个人的代码看起来都非常漂亮和一致,那么 Python 并不是未来最好的语言。

Python 提供的编程经验有限


Python 深受初学者欢迎的另一个原因是它易于使用。不必通过编译器来传递代码。


然而,Python 在这方面的缺点是,它实际上并没有提供全面的软件开发体验。学习用 Python 编写代码的人并没有学习传统软件开发流程的各个方面,如果他们继续使用非解释型的语言,他们的学习曲线会比较陡。


事实上——这听起来可能有点苛刻——了解如何用 Python 编写代码仅仅是了解如何在 Bash shell 中运行程序的第一步,而 Bash shell 根本就不是编码。


从这个角度来看,你可以说 Python 正在造就一代不一定懂得“完整”编程的程序员。他们只知道如何编写解释型代码。

用 Python 没编写出过什么真正重要的东西


这句话可能也会让我陷入困境,但我还是会继续说下去:环顾当今世界,我没有看到任何真正


大型、复杂、重要的应用程序或平台是用 Python 编写的。


当然,有很多主要的网站都在以这样或那样的方式使用 Python,但大多数是在后端中使用 Python。用 Python 开发的小型应用程序可能有数百万个。


但是没有基于 Python 的 WordPress 等价物(尽管有一些基于Python的CMS,其中大部分你可能没有听说过)。没有任何办公生产力套件严重依赖于 Python。当然,肯定没有操作系统,甚至操作系统的主要部分,是用 Python 编码的。


这一观察并不是对 Python 的批评,而是为了强调这样一个事实:如果 Python 想要在未来几十年中仍保持顶级编程语言的地位,你会认为现在会有人用它在做一些比编写脚本和简单应用程序更有趣的事情。但他们并没有,而且很可能也不会有。

结论


诚然,我在上文针对 Python 所提出的论点都是主观的,而且肯定会有争议。很多人比我更看好Python


我并不是说永远不应该使用 Python。它当然有有效的用例。但这些用例大多涉及编写相对简单的脚本和应用程序,我们不应试图使用 Python 作为编写所有东西的首选语言。


毕竟,正如我上文所说的,Python 最初基本上只是被设计为一种 Shell 脚本语言。它已经演变成一种更受欢迎的怪物了,我认为这种趋势将被证明是一种反常现象。十年后,我怀疑回首往事,回想我们让 Python 成为世界上最流行的编程语言时,会想知道我们当时是怎么想的。


原文链接:


https://www.itprotoday.com/programming-languages/python-now-top-programming-language-shouldnt-be

公众号推荐:

AIGC 技术正以惊人的速度重塑着创新的边界,InfoQ 首期《大模型领航者AIGC实践案例集锦》电子书,深度对话 30 位国内顶尖大模型专家,洞悉大模型技术前沿与未来趋势,精选 10 余个行业一线实践案例,全面展示大模型在多个垂直行业的应用成果,同时,揭秘全球热门大模型效果,为创业者、开发者提供决策支持和选型参考。关注「AI前线」,回复「领航者」免费获取电子书。

2022-06-17 18:2811924
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 505.9 次阅读, 收获喜欢 1970 次。

关注

评论 1 条评论

发布
用户头像
openstack应该算是比较大的应用了吧
2022-06-20 07:06
回复
没有更多了
发现更多内容

内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档

葡萄城技术团队

前端 PDF JavaScrip

计算机网络——分层结构

StackOverflow

编程 计算机网络 9月月更

线上直播预告:数据库人才培养创新与变革

阿里云数据库开源

数据库

mysql基本类型

急需上岸的小谢

9月月更

Linux系统安装Nginx

nginx Linux tree 9月月更

从普通网站到 PWA 你还在重新写代码吗?

鼎道智联

前端 OS PWA

极致体验!基于阿里云 Serverless 快速部署 Function

阿里巴巴云原生

阿里云 Serverless 云原生

全面构建数据安全“护城河”,助力企业数智化升级| 极客星球

MobTech袤博科技

大数据 数据安全

leetcode 437. Path Sum III 路径总和 III(中等)

okokabcd

LeetCode 数据结构与算法

【InfoQ】博睿数据CTO孟曦东访谈实录:可观测性技术是未来发展方向

博睿数据

可观测性 博睿数据 智能运维AIOps 极客有约

从成都核酸系统崩溃,谈谈IT系统如何应对10倍以上流量冲击

星汉未来

国内唯一|阿里云入选 Gartner 应用性能监控与可观测魔力象限

阿里巴巴云原生

阿里云 云原生 Gartner 可观测

45张图带你从入门到精通学习WireShark!

wljslmz

Wireshark 网络技术 抓包分析 9月月更

数据可视化分析工具如何在国内弯道超车,迅速崛起?

葡萄城技术团队

有效预警6要素:亿级调用量的阿里云弹性计算SRE实践

阿里云弹性计算

监控 预警 SRE实践

Elasticsearch6.1.2源码下载和编译构建

程序员欣宸

elasticsearch 9月月更

C++学习------cmath头文件的源码学习01

桑榆

c++ 源码阅读 9月月更

小六六学Netty系列之编解码器和handler的调用机制

自然

Netty 网络 9月月更

Axios的引入与使用-提供可响应api案例

Sam9029

前端 网络 axios 9月月更

多云时代如何实现自动化运维?博云给你最优解!

BoCloud博云

云计算 云原生 多云管理平台

港股交易系统开发之APP原生or封装?

软件开发大鱼V15988750073

证券 港股交易系统开发 港股打新系统 港股多账户系统 证券app

云桌面解决方案 企业最佳合作伙伴

力软低代码开发平台

国内低代码平台“定制化开发”能力较强的有哪些?

优秀

低代码

SD-WAN应用选路方案

阿泽🧸

SD-WAN 9月月更

网络IO是如何一步一步走向零拷贝的

C++后台开发

cpu 零拷贝 C++后台开发 网络io C++开发

转转商业化OCPC产品的护航之旅

转转技术团队

人工智能 计算广告 PID OCPC

Java线程池创建方式和应用场景

Java快了!

线程池 java;

Online Schema Change(在线更新元数据)

KaiwuDB

分布式数据库 schema

Zilliz 论文入选数据库顶会 VLDB'22

Geek_2d6073

每日一R「23」回顾基本概念

Samson

学习笔记 ​Rust 9月月更

融云 x KUPU:印尼蓝领用工的「直聘」样板

融云 RongCloud

互联网

「顶级编程语言」Python,名不副实?_语言 & 开发_Christopher Tozz_InfoQ精选文章