谷歌团队分享 Rust 语言开发体验:学习成本不高、编译速度不快,可以写出高质量代码

2023-06-30
关注

IT之家 7 月 1 日消息,Rust 是由 Mozilla 主导开发的通用、编译型编程语言,受到绝大多数开发者们推崇。谷歌团队近日在官方博客中发布文章,分享了使用 Rust 语言的体验和经历。

▲ 图源 谷歌官方博客

Rust 语言不需要海量学习成本

谷歌内部调查显示,超过 2/3 的受访者认为,他们只要学习 2 个月就能上手 Rust 语言、1/3 的受访者表示他们此前学习了 2 个月后,目前已经能够高效使用 Rust 语言,因此谷歌认为传言中的“Rust 语言至少需要学习 6 个月”并不准确。

▲ 图源 谷歌官方博客

Rust 编译器速度并没有想象的那么快

谷歌调查显示,到目前为止,构建速度慢是开发者在使用 Rust 时遇到的第一大挑战,只有四成受访者可以接受 Rust 编译器的速度。

unsafe 代码和互操作并非是最大的挑战

谷歌驳斥了传闻的“unsafe 代码和互操作始终是最大的挑战”说法,受访的谷歌开发者认为,他们在 Rust 领域面临的三大挑战更多是:

  • Macros(宏)

  • Ownership and borrowing(所有权和借用)

  • Async programming(异步编程)

此外,编写 unsafe 代码和处理 C / C++ 互操作也是谷歌开发者遇到的问题,但并不是最大的挑战。

Rust 的编译器错误消息十分有用

谷歌内部对 Rust 编译器大多好评,只有 9% 的受访者不满意 Rust 中的诊断和调试信息质量。

▲ 图源 谷歌官方博客

▲ 图源 谷歌官方博客

综合社区的反馈来看,大家都认为编译器消息的表现相对出色。

Rust 的代码质量很高

绝大部分谷歌受访者都表示 Rust 代码的质量很高 ——77% 的开发者对 Rust 代码的质量感到满意。当他们被要求比较“是否认为 Rust 代码比他们用其他语言编写的代码更正确”时,85% 受访者相信他们的 Rust 代码是正确的。

除此之外,Rust 代码也便于审查,超过一半的受访者表示 Rust 代码非常容易审查。

IT之家在此附上详细博文链接,感兴趣的用户可以点击深入阅读

广告声明:本文含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考。IT之家所有文章均包含本声明。

您觉得本篇内容如何
评分

相关产品

Honeywell 霍尼韦尔智能工业 在线/便携烟气分析仪专用传感器 气体传感器

CO 传感器;SO2传感器;NO2 传感器;NO传感器;氧气传感器

南方泰科 TGM 压力传感器

TGM是一款SOP8封装的压阻式MEMS压力传感器,其压力传感器芯片封装在 SOP8 塑封壳内。在传感器压力量程内,当用固定电压供电时,传感器产生毫伏输出电压,正比于输入压力。压力传感器芯片为绝压,可提供不同的压力量程的SOP8 压力传感器。

Huba Control 富巴 525系列 压力传感器

525系列压力传感器采用集公司20多年研发经验的陶瓷压力传感器芯片技术。该系列压力传感器可选压力范围大,电气连接形式多。最小量程为50mbar。大批量使用具有很好的性价比。

Cubic 四方光电 PM3009BP 室外粉尘传感器

PM3009BP是一款专门针对餐饮油烟监测的油烟传感器,其采用旁流采样方式,自带除水雾装置,结合智能颗粒物识别算法,确保传感器能够快速准确的检测油烟浓度的变化,同时创新的镜头自清洁技术的应用,能够长效防护传感器油烟污染,大幅度延长传感器的使用寿命。

Winsen 炜盛科技 MH-410D 红外CO2气体传感器 红外传感器

MH-410D红外气体传感器是通用型、智能型、微型传感器,该红外传感器利用非色散红外(NDIR)原理对空气中存在的CO2进行探测,具有很好的选择性,无氧气依赖性,性能稳定、寿命长。内置温度补偿。该红外传感器是通过将成熟的红外吸收气体检测技术与微型机械加工、精良电路设计紧密结合而制作出的小巧型高性能红外传感器。该红外传感器可广泛应用于暖通制冷与室内空气质量监控、工业过程及安全防护监控、农业及畜牧业生产过程监控。

Alliance 莱恩&联众传感线缆 Aurora Tool Cable 医疗电线 医疗线缆

用于连接两个5DOF传感器或一个6DOF传感器的电缆。 可重复使用 用于电磁跟踪系统

RAYCOH 锐科智能 30GM系列 IO-Link输出 2EP-IO,IUEP-IO 超声波测距传感器和接近开关

RAYCOH 锐科智能30GM系列 IO-Link输出 超声波线性位置传感器和开关

鑫精诚传感器 XJC-T001 压力传感器

◆传感器激光焊接密封,环境适应性较强 ◆球形联接件,始终保持模块的垂直称重状态 ◆支撑螺栓,防止设备倾覆且方便维护 ◆接地装置,保护传感器免受电源浪涌冲击 ◆过载保护装置,保护传感器免受冲击力

评论

您需要登录才可以回复|注册

提交评论

科技视野

这家伙很懒,什么描述也没留下

关注

点击进入下一篇

2020年自动驾驶技术还有多远?

提取码
复制提取码
点击跳转至百度网盘