V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
FreeWong
V2EX  ›  问与答

RUST 的性能, GO 的简单性

  •  
  •   FreeWong · 2021-11-18 10:52:48 +08:00 · 5531 次点击
    这是一个创建于 861 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有 RUST 的执行速度和性能,没有垃圾回收
    有 GO 的简单性 完善的社区库
    这样的开发语言有没有,目前?
    很期待这样的语言
    hhjuteman
        1
    hhjuteman  
       2021-11-18 10:55:19 +08:00
    c
    shyling
        2
    shyling  
       2021-11-18 10:58:57 +08:00
    c
    xujinkai
        3
    xujinkai  
       2021-11-18 11:01:57 +08:00 via Android
    确实是 c 其实很期待一个更现代化的 c 不过可惜的是 c 最重要的是兼容性
    FreeWong
        4
    FreeWong  
    OP
       2021-11-18 11:03:49 +08:00
    你们居然说 c 我做应用软件开发的,不做嵌入式
    多数情况下都是 tcp udp http 这样通讯,用 c 是不是库太少了
    514146235
        5
    514146235  
       2021-11-18 11:06:13 +08:00
    rust 不就没有垃圾回收么?

    rust 不就是被认为是代替 c++的么? linux kernel 好像已经引入 rust 了
    wellsc
        6
    wellsc  
       2021-11-18 11:06:55 +08:00
    你可以了解一下 zig
    mxT52CRuqR6o5
        7
    mxT52CRuqR6o5  
       2021-11-18 11:16:09 +08:00
    靠人的心智去管理内存简单不到哪去吧
    icyalala
        8
    icyalala  
       2021-11-18 11:21:57 +08:00
    不想要垃圾回收,又不想要自己管理内存的复杂性。
    cmdOptionKana
        9
    cmdOptionKana  
       2021-11-18 11:22:24 +08:00
    Go 的性能也不弱了,你真的需要 Rust 那么高的性能吗?

    要知道 V2EX 也只是用 Python 就撑起来了,淘宝用 Java 就撑起来了,你做什么项目需要用 Rust 来死抠硬件性能呢?
    Buges
        10
    Buges  
       2021-11-18 11:34:01 +08:00 via Android
    那就 go 就好了,很多场景 rust 由于复杂度导致实际应用性能还不如 go 。
    go 的简单性是掩盖了很多 edge cases 才做到的,你要即像 go 一样的简单设计,又能精细化的控制,那就看看 zig ,库是别想有,包管理都还没做完。
    另外 Simplicity is not easiness.
    ledkk
        11
    ledkk  
       2021-11-18 11:41:37 +08:00
    大部分场景都用不到语言的极限
    cin
        12
    cin  
       2021-11-18 11:45:52 +08:00
    Leviathann
        13
    Leviathann  
       2021-11-18 11:49:33 +08:00
    其实 rust 最重视的是安全
    比如标准库的 hashmap 默认的 hash 函数为了安全性(防止冲突之类的)用的是一个性能比较慢的算法
    Citrus
        14
    Citrus  
       2021-11-18 12:11:47 +08:00
    C 敢说 完善的社区库 ??? C 的依赖管理还不够乱么。。。
    HiShan
        15
    HiShan  
       2021-11-18 12:31:27 +08:00
    @FreeWong IM ? 场景完全跟语言的上限没关系啊,瓶颈不是在 IO 吗?
    dndx
        16
    dndx  
       2021-11-18 12:36:23 +08:00
    Rust 开发并不复杂,用 C 写过稍微复杂点的异步网络程序的都知道我在说什么....
    yolee599
        17
    yolee599  
       2021-11-18 12:51:17 +08:00 via Android
    越简单的语言越卷
    redvoilin
        18
    redvoilin  
       2021-11-18 13:05:40 +08:00
    crystal
    tesorouo
        19
    tesorouo  
       2021-11-18 13:31:08 +08:00   ❤️ 5
    @cmdOptionKana
    我的 Blog 能支持千万级并发,架构是按照双十一抢购秒杀设计的。

    与此同时,本月访客:3
    SingeeKing
        20
    SingeeKing  
       2021-11-18 13:42:05 +08:00
    Rust 学会之后其实很简单
    SingeeKing
        21
    SingeeKing  
       2021-11-18 13:43:18 +08:00
    而且因为 Rust 强大的宏 和 Go 目前还缺乏范型( 1.18 才正式出,出的初期也不可能普及),Rust 写起来可能比 Go 还简单
    SingeeKing
        22
    SingeeKing  
       2021-11-18 13:43:57 +08:00
    还有就是,可以考虑下 Swift ,也满足你说的几个要求
    XCFOX
        23
    XCFOX  
       2021-11-18 13:51:29 +08:00
    简单性和低运行时本身就是相悖的,没见过哪个语言既简单又没有垃圾回收的。Rust 已经很不错了。GoLang 的语法在我看来已经是简陋了。
    LANB0
        24
    LANB0  
       2021-11-18 13:59:34 +08:00
    C 又简单,性能又好
    cmdOptionKana
        25
    cmdOptionKana  
       2021-11-18 14:09:56 +08:00
    @SingeeKing 如果用 Rust 但不过分追求性能(比如很多地方就直接用 immutable ,不考虑省内存),用起来确实很爽,语言表现力很强。但 Rust 的宏我觉得不太好用,而且没有反射,很多时候用宏不是因为好用而是不得不用,这有点烦。

    另外,Go 的编译速度是让我最离不开的优点,相比之下 Rust 编译起来感觉笨重。
    nmap
        26
    nmap  
       2021-11-18 15:34:34 +08:00
    99%的项目都不会在乎 rust/go 的性能差异,能快速出活才是王道
    oOoOoOoOoOo
        27
    oOoOoOoOoOo  
       2021-11-18 15:41:15 +08:00 via Android
    C Programming Language 又简单 性能又好
    oOoOoOoOoOo
        28
    oOoOoOoOoOo  
       2021-11-18 15:42:07 +08:00 via Android
    看你这形容 估计不是业务 而是想自造玩具
    CommandZi
        29
    CommandZi  
       2021-11-18 16:20:16 +08:00
    我推荐 Swift
    FanChen
        30
    FanChen  
       2021-11-18 17:20:20 +08:00
    Haskell
    Weixiao0725
        31
    Weixiao0725  
       2021-11-18 23:18:52 +08:00
    @SingeeKing 我对 swift 不了解,只是单纯的问一下:swift 现在支持 win linux 上运行吗? swift 开发的 gui 是不是只支持 mac os 的运行?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1003 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 113ms · UTC 19:48 · PVG 03:48 · LAX 12:48 · JFK 15:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.