V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
BigChengzi
V2EX  ›  程序员

如何看待 Rust?

  •  
  •   BigChengzi · 23 小时 19 分钟前 · 5039 次点击
    想问问站里的各位大佬们,怎么看待 Rust 这门语言。有没有前景?
    学习过程中,大佬们有啥经验给讲讲吗?
    第 1 条附言  ·  6 小时 59 分钟前
    感谢各位大佬的建议,目前还在入门,半年前入过一次,没入进去,当时就是用 AI 把 Java 翻译成 rust 。

    其实当时不是没事找事,因为同样的逻辑前后端都实现了一套,当时经常出现前后端实现不一致的问题,后续维护很麻烦,所以讨论完,打算用 rust 写成 wasm ,把逻辑统一起来。

    学永无止境,学就完了!
    66 条回复    2025-11-05 15:21:03 +08:00
    FreeWong
        1
    FreeWong  
       23 小时 8 分钟前
    如果你的工作内容,主要是要求尽快把活干完,Rust 也许并不适合你。
    如果你的工作主要是研发性质的,不要求赶活的,也许 Rust 合适你。
    chenluo0429
        2
    chenluo0429  
       23 小时 8 分钟前 via Android   ❤️ 3
    一门不错的语言,奇特的语言特性,优秀的包管理器,较为完善的第三方库。
    学习起来有门槛,成本也不小。我的建议是自己写项目玩玩可以,当成主力工作语言不建议,受众面太窄了
    cslive
        3
    cslive  
       23 小时 3 分钟前   ❤️ 4
    常看常新
    swananan
        4
    swananan  
       23 小时 2 分钟前   ❤️ 2
    考虑到 Rust 有非常严格的语法层面限制,尽量把问题在编译时期暴露,是一门非常适合 vibe Coding 的语言,以前 c 写多了,现在特别喜欢写 Rust
    BigChengzi
        5
    BigChengzi  
    OP
       23 小时 2 分钟前   ❤️ 1
    这语言,得入门无数次,才能入门哈哈哈哈
    visper
        6
    visper  
       22 小时 59 分钟前
    感觉起来很厉害的语言,用来写过一些小工具,但是在公司推的话不敢推。去推 go 也不敢推这个。
    cryptovae
        7
    cryptovae  
       22 小时 56 分钟前
    不用刻意学,能让 tauri 启动就行了 /dog
    mightybruce
        8
    mightybruce  
       22 小时 52 分钟前   ❤️ 1
    Rust 语言 在 AI 时代已经没什么优势了,
    底层如操作系统内核以及 ebpf 、硬件层面上,不如 C, C 可以方便转成汇编而不会加特别多的编译器规则来方便优化。

    上层大型中间件和基础设施软件开发,c++ 几十年积累的库和丰富的经验 在 AI 时代更加强大。

    新开一个应用层的小项目比如 web 或者 命令行工具,这种边缘项目用 rust 还差不多。


    大型软件项目用 rust 是非常冒险的事情, 况且多数人还是在中国,可以说在中国连招人都招不到有架构和系统开发经验的 Rust 程序员(尤其是懂操作系统内核和优化性能这一块)。
    BigChengzi
        9
    BigChengzi  
    OP
       22 小时 43 分钟前
    @mightybruce 言之有理哈哈哈
    yuzii
        10
    yuzii  
       22 小时 38 分钟前
    C++调库侠,一直想用 rust 重写项目,但是一看一些要用到的专业库是 Rust 调用 C/C++,我就放弃了。
    cvooc
        11
    cvooc  
       22 小时 35 分钟前
    烧, 想学, 但是花活太猛老是学的精神错乱.
    lujiaxing
        12
    lujiaxing  
       22 小时 34 分钟前
    用来代替 C/C++, 写算法, 写底层组件简直不要太合适. 写业务逻辑纯粹给自己找不痛快.
    clarkethan
        13
    clarkethan  
       22 小时 30 分钟前
    反正我在用,还挺顺手
    fioncat
        14
    fioncat  
       22 小时 21 分钟前   ❤️ 6
    刚学 Rust:跟编译器斗智斗勇
    用了一段时间 Rust:编译报错?草! clone !
    jackple
        15
    jackple  
       22 小时 20 分钟前
    因为寻找 electron 替代框架而学 rust, 还是挺不错的, 高效, 更何况, 反正也是 ai 写, 控制好它, 认识好它, 不至于完全不懂逻辑, 能维护就行
    verrickt
        16
    verrickt  
       22 小时 19 分钟前 via Android
    @fioncat 太真实了😂
    pandaPapa
        17
    pandaPapa  
       22 小时 16 分钟前
    @jackple rust 写业务很累的, 有 AI 也不建议, 别指望 AI 能解决全部问题
    red13
        18
    red13  
       22 小时 3 分钟前
    我用 rust 写 olap 内核,感觉还不错,比起 c 开发效率高了不少,但是前期学习曲线很陡
    polythene
        19
    polythene  
       22 小时 0 分钟前
    写系统级应用,用 rust 是挺稳的,编译器的约束能避免非常多潜在的问题。
    现在唯一不爽的就是 async 生态,体验太割裂了,上来就要个 static 生命周期,导致 borrow checker 那套精华完全绕过去了。
    viking602
        20
    viking602  
       21 小时 55 分钟前
    挺好的 但也没那么好
    litchinn
        21
    litchinn  
       21 小时 38 分钟前
    好用,爱用
    xjzshttps
        22
    xjzshttps  
       21 小时 28 分钟前
    @yuzii #10 +1 rust tls 库称怎么优秀,结果一看细节,调用的还是 c++ 的 openssl 分支版本,感觉挺无语的。
    PPPaul
        23
    PPPaul  
       21 小时 20 分钟前 via iPhone   ❤️ 1
    入门:尝试实现链表:放弃
    niubee1
        24
    niubee1  
       21 小时 0 分钟前
    用就完了
    5waker
        25
    5waker  
       20 小时 54 分钟前
    @cslive 深有同感,每次都是入门
    Gilfoyle26
        26
    Gilfoyle26  
       20 小时 48 分钟前
    @BigChengzi #5 入门,再入门,再再入门,再再再入门.....
    Hilong
        27
    Hilong  
       20 小时 42 分钟前
    第三次尝试入门了.搞 tauri 接触到的,想自己学一下,后续更好的开发,但是发现和 Javascript 的难度不是一个量级的,目前还在坚持.希望能有点结果吧,主要是希望突破自己的舒适圈
    z1154505909
        28
    z1154505909  
       20 小时 33 分钟前
    入门->入门->入门->入.....算逑,破门
    gesse
        29
    gesse  
       17 小时 12 分钟前
    可以买这本书看看《 Rust 从入门到放弃》 🐶🐶🐶
    ferock
        30
    ferock  
    PRO
       17 小时 10 分钟前 via iPhone
    挺好的语言,学就完了
    profchaos
        31
    profchaos  
       17 小时 7 分钟前
    rust analyzer 目前提示太差了,肯定是想学的,编译期安全不错,宁愿开发的时候麻烦一点
    zengxs
        32
    zengxs  
       16 小时 54 分钟前
    Rust 其实只适合开发基础设施,不太适合应用层开发,应用面不宽的
    如果你不知道项目里该不该用 Rust ,那么很可能你的场景就是不适合用 Rust
    zengxs
        33
    zengxs  
       16 小时 49 分钟前   ❤️ 2
    @xjzshttps 你指的是 rustls 的 ring 后端用了 boringssl 的加密原语代码吧
    这个其实不能算调用了 openssl ,TLS 的实现一般分为两部分,一个是加密原语( Crypto )一个是 TLS 协议
    openssl 套件里面也是把这分为两个库的 (libssl.solibcrypto.so)
    你可以理解 rustls 只是实现了 libssl.so 这一部分

    而且 rustls 和加密后端是解耦的,他不止支持 ring 这一个后端。

    而且说多优秀也没有,rust 生态中大部分项目用的默认 tls 库还是 native-tls ,rustls 基本是备选。
    RecursiveG
        34
    RecursiveG  
       16 小时 7 分钟前
    我和 Rust 人聊 C++,Rust 人和我说内存安全。
    我和 Rust 人聊互操作性,Rust 人和我说 unsafe{}又不是不能用。

    不过学习 Rust 确实能帮我写出更安全的 C++
    arloor
        35
    arloor  
       16 小时 4 分钟前   ❤️ 1
    非常好!
    一路从 java 到 go 最后到 rust ,rust 是我最喜欢语言了。
    jark006
        36
    jark006  
       16 小时 3 分钟前
    我拿来写小工具挺方便的,静态编译,成品单文件无依赖,有方便使用的包管理器,挺好
    xiaoshan5733
        37
    xiaoshan5733  
       15 小时 51 分钟前
    可能会被喷。看了别人发的示例代码都丑的不行,让 AI 给的代码示例感觉正常多了,所以很好奇哪些丑陋的代码是怎么来的~
    datou
        38
    datou  
       15 小时 45 分钟前
    怎么看?

    我一般是仰望 rust 大佬
    adoal
        39
    adoal  
       14 小时 54 分钟前
    别看了,别待了,该用的人早就用了好几年了,还在纠结徘徊的就是用不到的。
    james122333
        40
    james122333  
       13 小时 54 分钟前 via Android
    一无是处 另类技术护城河
    不简洁 不轻量 消秏资源过多 跨平台能力不突出 学习成本过高 运行效率在语言第一梯队也不突出
    只有耗的起的单位爱 大公司开源项目不相信二进制包想重编也有你得受
    甚至也没什么哲学灵魂 也只是把手动处理内存改成手动密切注意所有权
    工具是拿来使用不是拿来整蛊自己的
    此语言试图入侵内核事实上也是个阴谋
    yb2313
        41
    yb2313  
       8 小时 12 分钟前   ❤️ 2
    喜欢 rust 的人在未来出现了能解决 rust 历史遗留问题的语言一样会喜欢新语言, 不喜欢的永远抱着自己学过的技术固步自封, 因为他们能力不在自己身上, 而是和语言绑定, 喜欢在熟悉的世界做熟悉的事.
    yb2313
        42
    yb2313  
       8 小时 8 分钟前
    @mightybruce 非常冒险, 那也只是因为在 cn, 小公司用低工资招不到人那肯定冒险.大型项目, CF,servo 算不算大型? 还有字节和小米都在招 rust, 他们的项目不够大吗?
    Rorysky
        43
    Rorysky  
       7 小时 35 分钟前
    linux 已经拥抱 rust 了

    这是不同观点
    BigChengzi
        44
    BigChengzi  
    OP
       7 小时 4 分钟前
    @red13 大佬大佬,我现在最头疼的就是借用、生命周期了。动不动,就跟我说,你这个变量不能在这用多次哈哈哈哈
    liaohongxing
        45
    liaohongxing  
       7 小时 2 分钟前
    在目前 linux kernel 和 debian 都在推广的情况下,rust 未来前景肯定是可以的,已经不是小众语言了。
    我第一次知道 rust 是 tidb , tidb 那么大的项目都上 rust, rust 和 go 配合还是挺不错的。
    rust 解决性能问题,go 解决开发效率问题。rust 只是上手很难,连我这种多语言选手都觉得困难。
    多年以来只是在啃文档,浅显试试。
    Yanlongli
        46
    Yanlongli  
       6 小时 56 分钟前
    咋说呢,对我这种无数次重新来过的新手来说就像 ts 的 any 一样,rust 也是各种 clone
    研究学习用、小功能用,还未用来做正儿八经的项目
    xinyu391
        47
    xinyu391  
       6 小时 35 分钟前
    能用 C++实现的,就不用 Rust
    能用 Golang 实现的,就不用 Rust
    能用 Java 实现的,就不用 Rust
    suyuyu
        48
    suyuyu  
       6 小时 29 分钟前
    我也是入了 2 次没入进去。
    BBCCBB
        49
    BBCCBB  
       5 小时 58 分钟前
    我已经用上了. 入了两次, 终于入门了. 非常喜欢 rust
    arloor
        50
    arloor  
       4 小时 44 分钟前 via Android
    @BBCCBB 的确,入了门的都说好
    AoEiuV020JP
        51
    AoEiuV020JP  
       4 小时 41 分钟前
    看好,想学, 只是想想,
    jackple
        52
    jackple  
       4 小时 33 分钟前
    @pandaPapa 试验性项目, 而且, 什么都得学学, 并没有什么坏处
    jackple
        53
    jackple  
       4 小时 32 分钟前
    @Hilong 同, 哈哈
    Lee2019
        54
    Lee2019  
       4 小时 28 分钟前
    作为一个 devops
    自己写方便自己工作的工具,我用 rust 写
    如果是要和别人一起用,后面甚至要一起开发的,就 go 和 python 了
    SolaWing
        55
    SolaWing  
       4 小时 19 分钟前
    Rust 特点:高性能,内存安全,上手难度高,开发效率较低。市场前景主要是对性能和内存安全需求都高的行业,替代 c++,岗位相对较少。


    下面是豆包的各语言对比数据。

    1. 性能:编译型语言碾压解释型

    第一梯队(极高):C 、C++、Rust 。直接编译为机器码,无需运行时解释,适合对速度、延迟敏感的场景(如游戏、操作系统)。
    第二梯队(中高):Java 、Go 。Java 依赖 JVM 即时编译( JIT )优化,Go 直接编译为二进制文件,两者在后端服务中性能足够。
    第三梯队(低):Python 、JavaScript 。解释型执行,Python 还有 GIL 锁限制多线程并发,但若通过 C 扩展(如 NumPy )或异步(如 Node.js )可弥补部分性能。

    2. 内存安全:避免 “野指针” 是关键

    最安全:Rust 。通过 “所有权、借用、生命周期” 机制,在编译期强制检查内存使用,彻底杜绝内存泄漏、越界等问题,无需 GC 。
    较安全:Java 、Python 、JavaScript 。依赖 GC 自动回收内存,开发者无需手动管理,但 Java 可能因对象未释放导致 OOM ,Python 需注意循环引用。
    最不安全:C 、C++。完全手动分配 / 释放内存,容易出现野指针、内存泄漏,需依赖开发者经验和工具(如 Valgrind )排查。

    3. 开发效率:生态和语法简洁度决定速度

    最高效:Python 、JavaScript 。语法简洁(如 Python 一行代码实现循环),生态库极丰富(如 Python 的 Pandas 、JavaScript 的 React ),能快速落地需求。
    高效:Java 、Go 。Java 有 Spring 、MyBatis 等成熟框架,Go 原生支持并发和跨平台,部署无需依赖虚拟机,开发迭代速度快。
    较低效:C 、C++、Rust 。C/C++ 需处理底层细节,Rust 编译检查严格(如类型、内存错误需反复调试),开发周期较长。

    4. 上手难度:语法复杂度和概念门槛是核心

    最易上手:Python 、JavaScript 。Python 语法接近自然语言,无需关注变量类型(动态类型); JavaScript 语法宽松,前端场景可即时看到运行效果,适合零基础入门。
    较易上手:Go 。语法规则少(仅 25 个关键字),无继承、泛型等复杂特性(早期无泛型,1.18 后支持),并发模型简单( goroutine )。
    较难上手:Java 。需理解类、对象、继承、接口等 OOP 概念,还要熟悉 JVM 、GC 等底层知识,初期学习曲线较陡。
    最难上手:C 、C++、Rust 。C/C++ 的指针、内存管理抽象; Rust 的所有权机制,对新手极不友好,需大量实践才能掌握。

    5. 市场需求:跟着行业趋势走

    需求最稳定:Java 、JavaScript 、Python 。Java 垄断企业后端,JavaScript 是前端唯一语言,Python 统治 AI / 数据分析,岗位数量多。
    需求上升快:Go 、Rust 。Go 因云原生( K8s 、Docker )爆发,Rust 因内存安全被浏览器( Chrome )、区块链( Polkadot )领域青睐,人才缺口大。
    需求细分:C 、C++。主要集中在嵌入式、游戏引擎、操作系统等领域,岗位数量少但要求高,薪资溢价明显。

    场景化选择建议

    做 AI / 数据分析 / 自动化:优先 Python (生态最完善)。
    做前端 / 全栈:必须学 JavaScript (配合 React/Vue/Node.js )。
    做企业后端 / Android:Java (生态成熟)或 Go (轻量高效)。
    做云原生 / 微服务:首选 Go (协程 + 跨平台部署优势)。
    做系统开发 / 高性能服务:Rust (安全)或 C/C++(性能 + 兼容性)。
    做嵌入式 / 驱动:只能选 C (硬件兼容性最好)。
    arthurblake
        56
    arthurblake  
       4 小时 17 分钟前
    @SolaWing 你账号危矣
    SolaWing
        57
    SolaWing  
       3 小时 49 分钟前
    @arthurblake 不让贴 AI 吗?好像也没有编辑或者删除帖子的能力...
    seenthewind
        58
    seenthewind  
       3 小时 12 分钟前
    人生苦短,我用 python 。

    除非特殊情况非让我用 rust 。
    uni
        59
    uni  
       2 小时 46 分钟前
    唯一一个可以把“这个软件是用该语言写的”作为宣传点的语言,天底下唯一一份
    Herdsman
        60
    Herdsman  
       2 小时 13 分钟前
    Rust 缺一个金主大腿,感觉可以构建一套游戏开发平台,UE 之于 C++,Unity 之于 C#。
    zepc007
        61
    zepc007  
       2 小时 9 分钟前
    Rust 有啥难的,把编译器骗过去都完成百分之七十了,难就难怎么骗过去🥺🥺🥺
    sharpy
        62
    sharpy  
       1 小时 33 分钟前
    在公司一直用 rust 和 skia 写的后端/cpu 渲染服务,最近搞了套在 rust 里写实现,揉进 skia 原项目中编译成 canvaskitjs 给前端用,这一套技术栈复杂是复杂了点儿,但非常一颗赛艇
    PTLin
        63
    PTLin  
       1 小时 22 分钟前
    其实都 25 年了,这个话题已经没什么好说的了。
    微软的 Windows ,Linux 的 rust for linux(虽然这个项目在我看来是有很多问题的),甚至 Android 中不少核心服务都是 rust 写的,还有 aws ,cf 等公司都开始用 rust 了。
    这可以说明 rust 已经成熟到可以用来编写一些“正经”的东西了,并且国外的大公司也都在积极使用 rust 。但是基本都是用在偏底层和基础设施的领域,假如你的方向和这些不沾边,比如是搞 gui 前端 后端方向的那学 rust 真的没什么用,只能 just for fun 了。
    lcj2class
        64
    lcj2class  
       1 小时 22 分钟前
    不如听听专家怎么说,https://rusttalk.github.io/
    Bluecoda
        65
    Bluecoda  
       34 分钟前
    我个人更喜欢 zig 多一些,如果项目可以静态分配内存的话,zig 也不会有什么泄露的问题
    rust 就是语法糖尿病的意思,一大堆语法糖,不过也不能否定其实用性

    我建议多学学,也不用一定考虑前景,喜欢就学,其实都不会太难
    学 rust 最简单就是做那个 rustling ,一边做一边看文档,就不会那么难了
    IamUNICODE
        66
    IamUNICODE  
       26 分钟前
    我挺喜欢的,而且不觉得只适合系统编程,应用级一样好用,唯一问题是现在没有好的的工作机会,都是自己在折腾
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5344 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 07:47 · PVG 15:47 · LAX 23:47 · JFK 02:47
    ♥ Do have faith in what you're doing.