网易首页 > 网易号 > 正文 申请入驻

编程语言之争:Rust 社区活跃开发者 Ed Page 谈 Rust 与 C++ 的未来

0
分享至

作者 | Annie Xu
采访 | CSDN&Boolan 首席顾问 卢威

责编 | 何苗

出品丨GOSIM 开源创新汇

你最 pick 哪种编程语言?C++、Rust,还是 Python?

Ed Page 从事编程行业十几年,见证了不同编程语言的兴衰史。从 C++标准版本 C++98 的诞生,到 Jave、D、Go 等编程语言的崛起与发展,并跃跃欲试想挑战 C++ 的江湖地位。

诚然,新出现的编程语言分走了 C++的部分用户,但在 Ed 看来,它们都不具备 C++的核心优势。Rust 的出现,让 Ed 看到了它在部分场景下取代 C++的一丝曙光,于是他全身心投入 Rust 和 Cargo 的功能构建与社区维护。

点击小程序查看完整视频

曾是 C++、Rust 和 Python 的使用者,Ed 为什么唯独看好 Rust?

他也是 AI 时代的逆行者,拒绝使用 AI 生成代码,甚至不使用任何代码辅助工具。CSDN&Boolan 首席顾问卢威主持本期 GOSIM 独家对话栏目 Open AGI Forum,对话 Futurew ei 软件开发者 Ed Page,分享他对 Rust 编程语言发展与 Cargo 社区运营与功能开发方面的看法:

  • 不同的编程语言有其优势,也有其缺点,现在暂时还没有一种语言完美到解决所有问题。

  • 不要花费太多时间去优化细节,而忽视了“这是否重要”。

  • 大胆地复制代码,通过大量学习填补知识空白,之后思考如何优化加速。

以下是本次采访的主要内容:

C++、Rust 还是 Python?

GOSIM:大家好,欢迎来到 Open AGI Forum。我们非常荣幸地邀请到了 Ed Page,请向观众简要介绍一下自己。

Ed Page我从事软件开发已经有几十年了。最初是一名 C++程序员,负责操作系统、驱动程序开发。随着职业发展,我逐渐转向开发者体验、工具构建等方面的工作。现在,我全身心投入 Rust 社区,致力于改善用户体验。同时我还服务于 Cargo 团队,更新生态系统中的软件包。

GOSIM:为什么在做了多年的 C++程序员后,转向 Rust 呢?之前积累的经验对现在有什么影响?

Ed Page:在 C++ 98 标准版本出现之前,我就已经在用 C++ 了。这几十年,我也见证了很多编程语言的兴亡史。期间出现了很多传言,如“Java 将会取代 C++”“D 语言将会取代 C++”“Go 语言将取代 C++”……

每一种新的编程语言的出现,都会带走一部分 C++的用户,但始终没有哪个编程语言能真正动摇 C++的核心优势。C++存在问题,圈内有一句话是“C++ is bad,but so is everything else”,大意是“C++有缺点,但没有更好的选择了”。

第一次接触到 Rust 时,我觉得它很有趣。Rust 语言解决了一些其他语言没能解决的关键问题,填补了操作系统和嵌入式空间中尚未得到充分服务的部分。所以,我想尽我所能推动 Rust 成功,也许未来有一天它可以替代 C++ 成为这类应用场景的主要语言

GOSIM:在接触 Rust 之前,你曾使用过 C++ 和 Python,请比较一下这三种编程语言。

Ed Page:现在暂时还没有一种语言完美到解决所有问题。C++的功能很强大,它支持泛型特化,而 Rust 目前并不支持。当你在 Rust 中使用泛型参数时,你需要指定其所适用类型的的所有特征。因此,C++中的泛型模型不能保证适用于所有类型,而 Rust 能保证泛型的可持续构建,类型可接受就能良好运行。

我很喜欢 Python 的干净整洁,有时候在 Python 中编写的代码像是伪代码。但我对 Python 工具的分散和无序感到失望,XKCD 漫画中也有吐槽这一点的。Cargo Script 正在朝这个方向努力。我想:如果我们有一个标准库的替代品,隐藏掉很多低级别的细节,会不会更好?

我们也试图优化 Rust 的编辑布局,让开发者感觉是在 Python 中编写一样流畅。这样还能享受到 Python 的一些好处,比如快速组合代码、原型化、编译和构建等等。有时候,不用声明类型十分方便。但由于 Python 缺乏静态类型,有时会引发一些错误。我们尝试让 Rust 吸收 C++、Python 的优势。

Rust 的维护挑战与 Cargo 团队协作

GOSIM:作为 Rust 的关键工具如 Clap 库和 Cargo 包管理器的维护者,你曾遇到最大的挑战是什么?

Ed Page:时间是最大的挑战之一。起初我只是在业余时间进行 Rust 的维护,但随着家庭事务的增多,我的业余时间变少了。在加入 Futurewei 之前,我并没有太多时间进行维护。即使有时间,需要解决掉问题的也很多,远不是一两天就能搞定的。我的一个待办事项中列出了亟待解决的问题,可能需要超过一年的时间才能完成。另一个挑战是弄清楚哪个问题应该优先考虑,以及何时说“不”

GOSIM:你做过的哪些改进功能令你特别自豪?

Ed Page:我对 Cargo 的第一个重大贡献是给 Cargo 添加了“add”功能。在此之前,我并没有使用过这个功能,认为没有必要仅仅为了添加依赖项而去安装一个第三方工具。虽然不是我编写的初始功能,但是我负责把它加入到 Cargo 进行运行的。在进行了一些调整和改进后,它大大提升了 Cargo 的使用体验。

GOSIM:作为 Cargo 团队的一员,你的主要职责是什么?你与其他团队成员是如何开展合作的?

Ed Page:Cargo 团队的情况很容易让人误解。人们可能以为“他们需要 Cargo 团队去做某件事,Cargo 团队就会去执行”,或者“Cargo 团队的负责人就是团队的唯一决策者”。实际上并非如此,Cargo 团队可以决定 Cargo 中包含哪些功能。

Cargo 团队也可以帮助人们完善设计,使其达到 Cargo 团队的标准。有时我们会参与功能设计,但我们不可能帮助每个人做全部内容。我们工作的重点在于决策制定和长期维护。

GOSIM:再次回到协作的话题,是否有具体的例子可以分享一下你们如何与其他团队成员进行合作?

Ed Page:我们共同讨论了 Cargo 的设计方案。例如,Rust 和 C++可以为用户提供错误提示和长度检查的功能,而我们无法提供这样的提示信息。因此,目前正在开发这项功能。

随着 Cargo 的发展,我们会根据人们的需求拓展 Cargo 的功能。我和团队的另一位成员 Scott 合作进行了大量的工作。合作提高了效率,更方便我们进行开发。

重点改进依赖项处理与兼容问题

GOSIM:Cargo 还将推出哪些令人期待的功能呢?

Ed Page:即将推出的是MSRV-aware 解析器。它为项目支持最低的 Rust 版本,确保选择的依赖项与你声明的 Rust 版本兼容,对企业来说非常重要。我们每六周会进行一次升级以保证 Rust 的质量和兼容性。

但是,有些企业更新前需要进行不同的验证,有些只能抽空进行升级维护,他们就无法及时进行更新。为了方便这些企业在使用旧版本 Rust 时也能找到兼容的依赖项,我们也改进了相关功能。

我开发的另一项功能是Cargo Script,它允许 Rust 文件中直接包含依赖项,而不必单独使用一个 Cargo.toml 文件。这使得快速搭建实验变得非常容易。当你创建一个 issue 并在 GitHub 上提交时,它包含其他用户想要复现该 issue 所需的一切内容。如果你想与同事交流这个项目,也可以发送给他完整的文件,可以方便地进行原型设计、实验和工作进度分享。

GOSIM:你认为 Rust 需要进行哪些重点改进以提供更好的服务?

Ed Page:首先,我刚才提到的 MSRV-aware resolver 将大大减轻人们的负担。最近,我和技术人员沟通时,他们表示 CTO 对其处理旧依赖项的工作效率感到不满。对所有员工来说,处理旧的依赖关系占用了很多时间。

第二,时间构建。时间十分重要,需要有人专门负责时间,从而更好地优化 Cargo 的缓存机制,提高构建速度。

第三,供应链管理。我们正在开展软件物料清单相关的工作。除此之外,还有一些其他工作需要解决,比如更好地跟踪代码中的漏洞报告,更好地了解依赖项的变化,以及如何更好地查看你的依赖项。

AI or not?

GOSIM:你是否尝试过使用 Copilot 或 ChatGPT 来生成 Rust 代码?

Ed Page:事实上,我没有使用过任何 AI 工具,或者类似的代码辅助工具。我甚至不使用语言集成查询(Language Server Protocol),如 Rust Analyzer。有一次我不小心启用了它,随后我想立刻把它从我的文本编辑器中删掉。

GOSIM:我问这个问题的原因是,Python 几乎是大语言模型的母语,但大模型对于 C++ 和其他语言的支持相对较低。在 CSDN,我们正在进行一些工作试图提高大语言模型在 C++ 上的性能。

Ed Page:我不太清楚这些模型的细节,也不太了解 AI 和机器学习。但我猜测可能是 Python 对属性信息的规定更严格,所以可以更好地用 Python 来生成代码建议。

GOSIM:不同语言在大型语言模型中的表现存在差异,应该做点儿什么让不同语言在 AI 领域更公平。最后一个问题,对于有兴趣在 Rust 中创建或维护开发工具的开发者,你有什么建议?对于新加入 Rust 生态的开发者来说,有哪些注意事项?

Ed Page:不要过分担心细节Rust 提供了低级控制功能,不要花太多时间试图优化每一个细节,而忽略了它是否真的重要。这样只会造成时间浪费,事情却没有真正完成。我认识的一个人的一件衬衫上面写着“keep calm and clone”。

不要担心把所有东西都借用过来,尤其是当你只是想做一个 CLI,或者你刚刚学会一些内容,只需要让代码工作完成你想做的事情,随后通过专业书籍搞明白,找出如何让它更快的方法,然后再去担忧它是否运行。大多数情况下,你可能根本不会在意自己做了哪些克隆。

GOSIM:感谢 Ed 的精彩见解和讨论,感谢所有观看的开发者们。本次的访谈就到这里,下次再见。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
iPhone系统垃圾一键清理,26G变8G,告别卡顿超耐用

iPhone系统垃圾一键清理,26G变8G,告别卡顿超耐用

小柱解说游戏
2026-04-28 16:31:31
女演员自曝:曾流产5次失去7个宝宝,如今43岁仍努力拼二胎!

女演员自曝:曾流产5次失去7个宝宝,如今43岁仍努力拼二胎!

猪小艳吖
2026-04-24 13:49:15
中国造不出光刻机?中科大副院长:美国造不出,中国永远都不可能

中国造不出光刻机?中科大副院长:美国造不出,中国永远都不可能

小兰聊历史
2026-03-21 18:17:07
40国准备出兵伊朗,英法带头冲锋,局势失控调停失败

40国准备出兵伊朗,英法带头冲锋,局势失控调停失败

旧窗老街
2026-05-12 17:56:58
晚年杜聿明感叹:我们哪里是败给共产党,是败给了毛泽东一个人

晚年杜聿明感叹:我们哪里是败给共产党,是败给了毛泽东一个人

历史的烟火
2026-03-17 21:21:34
老婆出轨后,对方的妻子上门找到我:你媳妇跟我老公好上了

老婆出轨后,对方的妻子上门找到我:你媳妇跟我老公好上了

千秋文化
2026-05-04 18:38:07
基努·里维斯这部神作6月1日免费上线

基努·里维斯这部神作6月1日免费上线

追星雷达站
2026-05-11 10:47:36
红极一时的武汉无人出租车,现在怎么不火了?出租车司机道出实情

红极一时的武汉无人出租车,现在怎么不火了?出租车司机道出实情

呼呼历史论
2026-05-13 01:03:17
58岁男子同房时发生“性猝死”,办事时要当心4种情况,别大意!

58岁男子同房时发生“性猝死”,办事时要当心4种情况,别大意!

健康科普365
2026-05-12 17:58:46
安徽夫妻,卖冲锋衣年入28亿,要IPO了

安徽夫妻,卖冲锋衣年入28亿,要IPO了

创业邦
2026-05-12 14:34:16
颜值身材就是差?可我们就是敢露敢玩!

颜值身材就是差?可我们就是敢露敢玩!

飛娱日记
2026-05-12 07:26:06
令人振奋!上海地铁“傲慢大妈”终于被依法惩处,倚老卖老已无用

令人振奋!上海地铁“傲慢大妈”终于被依法惩处,倚老卖老已无用

瓜哥的动物日记
2026-05-12 07:09:39
脸没恢复就别出来拍剧了,顶着肿胀脸,皮笑肉不笑,太让人出戏了

脸没恢复就别出来拍剧了,顶着肿胀脸,皮笑肉不笑,太让人出戏了

往史过眼云烟
2026-05-11 14:53:06
夫妻性生活:女人最讨厌的5种“床上行为”,男人千万别犯!

夫妻性生活:女人最讨厌的5种“床上行为”,男人千万别犯!

精彩分享快乐
2025-11-25 00:05:03
40岁曹云金再陷丑闻,离开德云社16年后能否全身而退

40岁曹云金再陷丑闻,离开德云社16年后能否全身而退

赏心悦目的我
2026-05-11 22:13:36
苏联社会帝国主义是当前最大的战争威胁 76年3月19日《人民日报》

苏联社会帝国主义是当前最大的战争威胁 76年3月19日《人民日报》

那些看得见的老照片
2026-05-12 20:30:03
拒高薪留守山东!17年一人一城,CBA最纯粹的硬汉陶汉林

拒高薪留守山东!17年一人一城,CBA最纯粹的硬汉陶汉林

往史过眼云烟
2026-05-12 19:29:07
输北京队15分!揪出3个“废柴”,坑惨了广东队

输北京队15分!揪出3个“废柴”,坑惨了广东队

体育哲人
2026-05-12 23:34:54
缅甸政府为何不敢动,拥有4万军队,号称小中国的佤邦?

缅甸政府为何不敢动,拥有4万军队,号称小中国的佤邦?

鹤羽说个事
2026-05-06 22:54:55
300347,实控人被证监会立案!

300347,实控人被证监会立案!

证券时报e公司
2026-05-12 22:28:51
2026-05-13 03:19:00
CSDN incentive-icons
CSDN
成就一亿技术人
26533文章数 242284关注度
往期回顾 全部

科技要闻

宇树发布载人变形机甲,定价390万元起

头条要闻

特朗普称将同中方讨论对台军售和黎智英案 外交部回应

头条要闻

特朗普称将同中方讨论对台军售和黎智英案 外交部回应

体育要闻

骑士终于玩明白了?

娱乐要闻

白鹿风波升级!掉粉20万评论区沦陷

财经要闻

利润再腰斩 京东干外卖后就没过过好日子

汽车要闻

吉利银河“TT”申报图曝光 电动尾翼+激光雷达

态度原创

健康
数码
亲子
教育
艺术

干细胞能让人“返老还童”吗

数码要闻

看电视的人越来越多了 3亿台电视在线 小米第一

亲子要闻

有点东西。周宁运动空间

教育要闻

求求你试试「5+1+1」学习法!!!

艺术要闻

震惊!他竟用镜头看透了所有女人的秘密!

无障碍浏览 进入关怀版