• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

50 岁老码农:Python Bug 太多,我选 Rust 和 Go!

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

这里有一位IT界的老司机,不,是久经沙场的老码农:

Linux专家,几十年来开发不少免费的开源软件;Linux之父的同窗好友,见证Linux的崛起;当过大学老师,担任过多家企业的首席技术官;会芬兰语、瑞典语、英语、德语四国语言。

他就是Linus的好友——Lars Wirzenius。

作为88年便成为赫尔辛基大学的计算机科学系的学生,Lars Wirzenius写代码已有30年,可谓是编程界的“老司机”了。可最近这位老司机引起程序员们的热议,为什么呢?

面对正大热的Python,自1993年就开始使用Python的他竟说:“不要用Python,去学Rust和Go吧”。

老码农炼成记

从2000年以来,Python是Lars Wirzenius的“心头好”,一直用它编程。可最近几年,Lars Wirzenius竟对Python竟有“两看相厌”的不满意,他直言Python有“三宗罪”:

Lars Wirzenius想从编程工具中得到更多的帮助,比如静态类型检查、更好地处理抽象和代码模块,让他编写出更大、更复杂的软件(但Python没有)。

他正在编写更具挑战性的软件,并试图从现有的硬件条件中获得更多的帮助(但Python并不能)。

他没有感觉到Python社区正朝着他想遵循的方向发展。相反,社区还往他不喜欢的方向去发展。(他看不惯)

嗯,一个傲娇码农炼成记。

接着Lars Wirzenius话题一转,唠嗑到他写了十多年但宣告失败的“亲儿子”——Obnam:

他从2006年开始用Python编写Obnam备份服务程序,Obnam大约有15000行Python代码,但该项目最终在2017年宣告结束。他说,Python很好,具有一定的程序规模和复杂性。但——

(开始发好人卡了)

他经常在Python的一些静态的、强类型的地方遇到Bug。他说:像Python这样的语言需要程序员自主控制的地方很多。

所以他决定要弃 Python,那么接下来该用什么语言编程呢?老码农将目光转移到TA

老码农为什么会弃 Python 投奔 Rust和Go

Lars Wirzenius学了几个月的Rust和Go,感觉良好,可以想象他对这两个语言“比心”点赞道:“这两个语言都有强大的静态类型系统;都有不错的模块系统;两者很好地支持并发性。”

于是他决定“贪新忘旧”了:我是写大型软件的,这两个语言都可以很好地替代Python。

在两者中,Lars Wirzenius更喜欢Rust,因为它“有更好的类型系统、更好的编译器、更好的工具”。并连连打call:“它吸取了过去三个世纪编程语言和工具的经验!”

目测Rust已化身为Lars Wirzenius的“缪斯女神”:“(Rust)的设计方式是有充分理由的!”

Python vs. Rust 和 Go,开发者们都怎么选?

那么网友对Lars Wirzenius“迷弟”般的言论有什么看法呢?

正反:比起Python,我也会选Rust和Go

@lordnacho

我也会选择Rust和Go,但是基于和Lars Wirzenius不同的原因。

当程序员编写任何“脚本”时,Python仍然是最好的语言:上手快;类型少,使用起来很明显;性能不是问题。

我认为Python最终是用来粘合代码。用来做粘合代码的语言应该有一个很大的libs生态系统,并且它是易于阅读。综上所述,Python有以下优点:空白的格式便于阅读,还可以使用一些内置的list/dict语法,让代码更加整洁和简短。

对于Web服务来说,当你需要更快的node.js但你不想花费太多时间去选择一个C++版本时,选择Go是一个很好的选择。

@littlestymaar:

我已经开发过一个100 KLOC静态类型的项目,我可以看到静态类型(语言)是如何搭建更小的代码库。当然我不能在写完一千行JavaScript时,也不会遇到一个“undefined不是一个函数“这样的错误。没错,你可能会觉得我是一个糟糕的程序员,但我确实发现静态类型(语言)很有用。而且与Java、C#或Go相比,Rust的确非常好。

反方:人生苦短,我只选Python

@dkersten

我非常喜欢Python,自2001年以来,我一直在使用它,并且多年来一直是一个非常顽固的Python爱好者。

@typon

然而,整个数据科学世界都建立在Python之上。我不明白(大家)对这种现实的公然无视。

当然还有这种,越学越High的程序员:

@atoav

当我开始学习Rust时,我是一个学了一年Python的程序员,我想要一个强类型的快速替代Python(的语言)而不需要垃圾回收。

我读过一些关于Rust的东西,它看起来很有趣,足以满足我的程序。我尝试用了下它,并且比我预期更喜欢它,现在我用它比用Python多。

有趣的是,在我学习了Rust之后,我对C和C ++等语言的兴趣增强了。它给了我一个关于C ++的良好新视角,并且包含了大量好的模式和概念,这些模式和概念在其他语言中变得有用。

你怎么看?

最后Lars Wirzenius爆料说,其实自己还没用 Rust 和 Go 写过什么重要代码,上面的说的鼓励大家“学 Rust 和Go,不用Python”仅仅是根据他几个月的看书学习来谈的,他直言后续随着他的深入学习,没准想法会有所改变。

那么作为开发者的你,是看好正大热的动态语言Python,还是静态语言 Rust和Go呢?欢迎来留言哦!


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
knote_go安装触屏驱动发布时间:2022-07-10
下一篇:
GO学习之路 - 安装发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap