python会被淘汰吗
python会被淘汰吗
Python语法简单,使用方便,有数量极为庞大的软件包可以使用,使用Python开发的效率极高!但Python又被无数人吐槽运行效率低,更要命的是工程化开发(多人协作开发、代码量很大)时极易踩雷,出现bug难以追踪!有很多人吐槽Python应该被淘汰,传着传着就成了Python即将被淘汰!
下面我重点讲讲Python被人传言即将被淘汰的两大致命缺陷!
一、Python运行效率低
Python是一门动态语言,简单的解释一下它运行慢的原因:Python解释器在程序运行时遇到首次出现的变量,要根据它的值动态分配内存;再次用到该变量时要计算它的引用次数;在引用次数完毕后还要负责销毁变量回收内存。而静态语言是在编译时就计算好变量占用的空间,程序加载时已经为其分配好内存,至于销毁变量回收内存的方式不同的静态语言又有区别,这里不再赘述。通过比较可以得知,Python的便利是因为Python解释器做了非常多额外的工作,Python的效率低也正是因为Python解释器做了过多的工作。
另外一个Python是30年前开发的编程语言,那时候还没有多核CPU,所以那时作者没考虑到Python运行时怎么利用多核运行,Python代码运行都是靠Python解释器将代码翻译成电脑可以执行的二进制指令。后来出现了多核CPU,很多人为了提高Python运行效率开发了Python线程包和进程包,但有一座大山至今绕不过去——GIL(全局解释器锁),造成Python软件始终没法真正利用多核CPU。
二、Python开发工程化易踩雷
Python不能强制约束变量类型、函数参数和方法参数的类型。Python程序有非常多的bug一方面是由于函数调用者传参不符合要求造成的;另一方面很多函数编写者编写函数时对参数检查不够细致,对参数不符合要求时不返回提示信息或提示信息不足。这两种情况造成了很多隐性bug极难发现!在所有代码代码量小时这些问题不明显,但对于软件开发工程化(工作量越来越大、参与人数越来越多)是一个相当要命的缺陷!
目前Python新版本也增加了参数类型提示的语法和功能,期望上述问题有所改观,但Python要考虑兼容以前版本的软件包,无法做到类似typescript那样强制约束!顺带提一嘴,JavaScript也是一门类似Python的动态语言,也有对参数类型约束弱的毛病,在工程化开发时同样被无数人吐槽,所以目前前端工程化开发很流行用TypeScript(伪静态语言,最终还是要编译成JavaScript代码执行),TypeScript比JavaScript强在对参数约束力,参数不合要求根本不能通过编译!
总结:
该死的历史包袱!Python极难绕过GIL(全局解释器锁)以提高对多核CPU的利用率!!!Python也极难强制约束参数类型!!!所以Python被传言即将被淘汰不奇怪!
但是就好比瑞士军刀,一把小小的瑞士军刀涵盖了剪刀、螺丝刀、锤子、尺子、起子众多功能,虽然它不如专门的剪刀、螺丝刀、锤子趁手,但就是有人爱用瑞士军刀!只要这世上还有人爱用瑞士军刀,那么这世上一样会有人爱用Python!!!
Python是一种优点、缺点都极为鲜明的编程语言,它即将被淘汰是传言!
但如果想要吃程序员这碗饭,只会Python的程序员即将被淘汰不是传言!
这是个吸引眼球的问题,唯一好奇的是会有几个人当真。
-
- 怎么提升穿搭时尚感(怎么提高穿衣搭配技巧)
-
2023-06-02 18:42:44
-
- 什么牌子护肤品补水效果好可以推荐(玻尿酸补水精华面膜)
-
2023-06-02 18:40:39
-
- 有哪些口碑好的腐剧(优秀腐剧推荐)
-
2023-06-02 18:38:34
-
- 伊能静被警方点名(伊能静 信教)
-
2023-06-02 18:36:29
-
- 撩离婚女人套路(这3招轻松搞定离婚女人)
-
2023-06-02 11:07:56
-
- 便秘吃什么水果最有效果(哪种水果治便秘最有效)
-
2023-06-02 11:05:52
-
- 钱小豪性格是怎样的
-
2023-06-02 11:03:47
-
- 在职研究生怎么备考(在职研究生备考经验)
-
2023-06-02 11:01:42
-
- 五帝钱的作用(住宅吉祥物之五帝钱的用法)
-
2023-06-02 10:59:37
-
- 卧室刷什么颜色容易入睡(灰色家具配什么颜色墙布)
-
2023-06-02 10:57:32
-
- 川剧变脸惊呆老外(外国人评价川剧变脸)
-
2023-06-02 10:55:27
-
- 舔狗是不是很卑微(很卑微的歌)
-
2023-06-02 10:53:22
-
- 语言往往是最伤人的(伤人最深的永远都是语言)
-
2023-06-02 10:51:17
-
- 一枚康熙通宝铜钱值多少钱(康熙通宝值多少钱一枚铜钱价格表)
-
2023-06-02 10:49:12
-
- 土耳其地震引关注,大雪纷飞余震不断 受灾民众现状如何?
-
2023-06-02 05:15:17
-
- 天主教和基督教的关系
-
2023-06-02 05:13:12
-
- 沙尘暴产生的原因是什么
-
2023-06-02 05:11:06
-
- 多人称戴苹果手表“手凹了” 客服怎么说?
-
2023-06-02 05:09:01
-
- 有超能力的英雄人物有哪些
-
2023-06-02 05:06:55
-
- 提子和葡萄的区别及功效
-
2023-06-02 05:04:49