V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
nnd
V2EX  ›  Go 编程语言

go 程序员, 第二门语言选择 c++ 还是 rust?

  •  
  •   nnd · 2021-08-20 11:36:51 +08:00 · 10769 次点击
    这是一个创建于 1192 天前的主题,其中的信息可能已经有所发展或是发生改变。
    gopher, 会一些 python 。第二门语言在学一个后端语言,还是学前端搞全栈
    85 条回复    2021-08-24 10:20:04 +08:00
    fatttt
        1
    fatttt  
       2021-08-20 11:55:33 +08:00
    要不然继续深入点,看看 k8s ?
    ch2
        2
    ch2  
       2021-08-20 11:56:17 +08:00
    建议加强 python
    lucifer1108
        3
    lucifer1108  
       2021-08-20 12:05:45 +08:00   ❤️ 10
    建议转 Java
    ila
        4
    ila  
       2021-08-20 12:10:48 +08:00 via Android
    不是第三门语言吗
    Tom7
        5
    Tom7  
       2021-08-20 12:11:25 +08:00
    建议面向 java
    IsaacYoung
        6
    IsaacYoung  
       2021-08-20 12:11:31 +08:00 via iPhone
    建议 c
    pengtdyd
        7
    pengtdyd  
       2021-08-20 12:16:58 +08:00
    建议选汇编
    Maboroshii
        8
    Maboroshii  
       2021-08-20 12:22:50 +08:00
    当然是 nodejs
    ifsclimbing
        9
    ifsclimbing  
       2021-08-20 12:23:30 +08:00   ❤️ 1
    Ruby
    Rwing
        10
    Rwing  
       2021-08-20 12:23:42 +08:00
    建议看看 C#
    stimw
        11
    stimw  
       2021-08-20 12:27:15 +08:00
    c++感觉还是不要碰了...
    sheep3
        12
    sheep3  
       2021-08-20 12:29:23 +08:00
    node 或者 C++

    node 生态不用多说,可以做的事情很多
    C++是相对于 Rust 的,我现在做 Rust 开发快一年了,如果你不用 Rust,学的话意义不是很大,无非是换个语法规则继续码代码。如果学 C++,可以更深入底层看看。
    zmxnv123
        13
    zmxnv123  
       2021-08-20 12:32:07 +08:00 via iPhone
    建议 python 或 j s
    LeeReamond
        14
    LeeReamond  
       2021-08-20 12:35:48 +08:00   ❤️ 1
    面向工资编程。如果你有机会接触到一些底层工作,比如专用系统设计,编译器优化,或者 jvm 优化等等,那学习 c++当然很有意义。不过如果你在可见的预期内永远不跟这些工作发生关联,那么 c++陡峭曲线与低应用场景会挫折人的学习兴趣。Python 和 node 本身是不需要学的语言,意思是你必须掌握,但由于语言特性太少...ruby 不太熟悉,不过想象中应该是同理,印象中只听过一些硅谷的初创公司在用,国内初创公司用的没怎么听说过,毕竟哪个不比他香。。
    Joker123456789
        15
    Joker123456789  
       2021-08-20 12:55:12 +08:00
    选一个语言,深挖下去 学精它即可。 然后这门语言周边的生态 以及跟这门语言经常合作的语言可以学学。

    比如,一个学 java 的人,可以在深挖 java 的同时,抽空了解下 js,css,html,app 开发等。 但是没必要一边学 java 一边学 python,一边学 c++。 没什么太大的意义。

    找准自己的定位,想清楚自己到底想从事什么方向,然后学这个方向需要的知识即可。

    会多门不如精一门,这是至理名言,当然了,如果你是天才,可以把所有东西全都学精,那就当我没说好了。
    playniuniu
        16
    playniuniu  
       2021-08-20 13:19:24 +08:00
    看你未来的发展方向,如果想往底层走,操作系统、C 、汇编更好点,如果还在应用层,再学门 Java,Go 和 Java 通吃,完全不愁工作。
    学 Rust 可以在等等,现在生态还没完全起来。C++ 感觉用的也越来越少, 如果非要这两个里面选,还是 Rust 吧,毕竟招 Rust 岗位的给的相对多点。
    我自己是全栈都做,建议你有时间,可以花一个月简单入门前端了解一下,但是我不建议花大精力学前端搞全栈,专注后端,找个互联网大厂混,比自己搞全栈,试图单干,挣得多得多。
    index90
        17
    index90  
       2021-08-20 13:24:29 +08:00
    全栈
    musi
        18
    musi  
       2021-08-20 13:31:51 +08:00
    学 js 做全干工程师(手动狗头)
    yazinnnn
        19
    yazinnnn  
       2021-08-20 13:34:04 +08:00
    建议 clojure,haskell,rust,f#里挑一个

    工资都挺高的
    gxm44
        20
    gxm44  
       2021-08-20 13:54:05 +08:00
    不要做“全干”,什么都会一点,什么都不精。。。
    darknoll
        21
    darknoll  
       2021-08-20 14:13:55 +08:00
    建议就学 go,实在想学,去学 js
    xylxAdai
        22
    xylxAdai  
       2021-08-20 14:17:37 +08:00
    java 呀。。后端开发的话,java 是最全面和最有市场需求的了吧。
    其实把一门高级语言学精了之后学其他的语言简直就是随便写,因为语言层面的东西实在是没什么复杂的。
    复杂的永远是编译、装载、链接和程序启动运行过程。
    xylxAdai
        23
    xylxAdai  
       2021-08-20 14:19:22 +08:00   ❤️ 1
    我觉得世界上没有所谓的语言程序员,只有解决实际问题的程序员。语言只是扳手,对软件工程和计算机系统的抽象理解和实际运用才是安身之本。
    keepeye
        24
    keepeye  
       2021-08-20 14:27:18 +08:00
    java 吧 搞搞安卓开发
    LinShiG0ng
        25
    LinShiG0ng  
       2021-08-20 14:41:08 +08:00
    让我想起那句老话,当你不知道学什么语言的时候,那就学 java 吧,虽然这个语言很繁杂,但是它近乎无所不能。
    back0893
        26
    back0893  
       2021-08-20 15:06:14 +08:00
    学 js 做全干工程师(
    sy20030260
        27
    sy20030260  
       2021-08-20 15:16:31 +08:00
    选两三个感兴趣的语言,写个 demo 级的应用试试
    CodeCodeStudy
        28
    CodeCodeStudy  
       2021-08-20 15:20:56 +08:00
    学点前端,不需要做全栈,只需要会修改简单东西即可
    Francis404
        29
    Francis404  
       2021-08-20 15:21:02 +08:00
    学 js
    C603H6r18Q1mSP9N
        30
    C603H6r18Q1mSP9N  
       2021-08-20 15:21:03 +08:00
    js 吧
    forsigner
        31
    forsigner  
       2021-08-20 15:29:18 +08:00
    来 js,全干走起
    lwch
        32
    lwch  
       2021-08-20 15:41:04 +08:00
    难道不应该是 js 吗
    ospider
        33
    ospider  
       2021-08-20 15:55:41 +08:00
    我写 Python 的,建议你看 JS
    zxCoder
        34
    zxCoder  
       2021-08-20 16:09:21 +08:00
    c++千万别,深的学不会,浅的学了也没用,别的语言也能干
    qq1340691923
        35
    qq1340691923  
       2021-08-20 16:48:44 +08:00
    php 是世界上最好的语言
    abcbuzhiming
        36
    abcbuzhiming  
       2021-08-20 16:52:23 +08:00
    Java,强烈建议 Java,你见识过以简单为哲学构建系统的 Go 之后,应该研究另外一种以较为复杂的体系构建系统的 Java 的哲学。
    不建议 C++,特性太多以至于其最初的开发者都没法完全背下来。
    不建议 rust,其思维独特且学习曲线陡峭,可以在多见识几门语言后再来研究,现在早了
    caqiko
        37
    caqiko  
       2021-08-20 17:09:09 +08:00 via Android
    PPT
    Leviathann
        38
    Leviathann  
       2021-08-20 17:11:23 +08:00   ❤️ 2
    一般想做后端但是不喜欢 java 的会选 go
    想做 native 但是不喜欢 c++的会选 rust

    所以有人说 go 就是云时代的 java
    rust 就是云时代的 c++
    yangxiaopeipei
        39
    yangxiaopeipei  
       2021-08-20 17:18:07 +08:00
    反向 PHP
    ly4572615
        40
    ly4572615  
       2021-08-20 17:24:45 +08:00
    人生苦短,我用的 python
    TOUJOURSER
        41
    TOUJOURSER  
       2021-08-20 17:30:34 +08:00
    技多不压身,1. 挑自己感兴趣的 2. 对未来职业发展加分的
    mingsz
        42
    mingsz  
       2021-08-20 17:34:28 +08:00
    c#吧
    livesitter
        43
    livesitter  
       2021-08-20 17:36:46 +08:00
    尴尬了,go 是我的第三门语言。
    如果再学多一门的话,我感觉 python 不错呀。
    libook
        44
    libook  
       2021-08-20 17:39:54 +08:00
    看你对第二门语言的需求是什么。

    如果是职业发展的话,你可以去招聘网站上搜一搜你自己感兴趣的岗位的技术要求,然后就知道学什么了。
    nash
        45
    nash  
       2021-08-20 17:50:36 +08:00
    建议精通 go,有兴趣可以看看前端,因为可以自己一条龙做点项目,其它语言等你精通了 go 再说
    Lemeng
        46
    Lemeng  
       2021-08-20 17:57:49 +08:00
    js 欢迎您
    waltcow
        47
    waltcow  
       2021-08-20 18:03:37 +08:00
    ts
    Kobayashi
        48
    Kobayashi  
       2021-08-20 18:18:16 +08:00
    第二门不应该开动态语言,或者奔前端吗?为什么还搞 c++,rust ?
    winterbells
        49
    winterbells  
       2021-08-20 18:46:12 +08:00 via Android
    机器码
    abccccabc
        50
    abccccabc  
       2021-08-20 18:52:49 +08:00
    第二语言我选择 php,据说是世界上最好的语言。^_^
    coolmenu
        51
    coolmenu  
       2021-08-20 19:24:00 +08:00
    python 用来干杂活,起码要熟悉一些常用的库,写脚本好用。
    现在不会 js 肯定是不行吧?要想自己做点什么,后端有各种选择,前端不会 js 就是吃瘪呀,熟悉 es6 是基本要求。
    fiypig
        52
    fiypig  
       2021-08-20 19:53:18 +08:00 via iPhone
    还有第一语言 go 的啊
    levelworm
        53
    levelworm  
       2021-08-20 19:54:31 +08:00 via Android
    主要看将来做啥吧。
    iceheart
        54
    iceheart  
       2021-08-20 20:10:58 +08:00 via Android
    想学就学,学了只有好处没有坏处。小马过河,别人说难对你不一定难
    powerman
        55
    powerman  
       2021-08-20 21:42:40 +08:00
    学习语言没有什么意义,你去把操作系统跟汇编摸一下,看看语言都是为了解决什么问题,高级语言首先是屏蔽细节,但是对细节的屏蔽肯定是有代价的,所以在不同的场景做出一些取舍罢了,至于什么语言 无非是取舍什么罢了,如果是写业务,那么大部分时候对内存不敏感,其实几个 T 的内存 跑个 CRUD 系统也没啥事,反正内存也不值钱。

    而且最近汽车制造行业缺芯片,其实基本上已经暴露嵌入式相关的东西已经成为夕阳行业了,因为廉价的 MCU 没有利润,为了在硬件上省那点钱,雇佣更高级对计算机了解更深入的软硬工程师来开发产品的模式越发不值得了,毕竟现在路由器也动辄差不多 512M 或者 1G 的内存,这在 10 年前是难以想象的事情,那个时候的 TP-link 软硬件工程师在类似带着脚铐的 3M flash 上塞下一个 vxworks 系统,还要维护一个嵌入式 http 后台跟网页前端用来管理路由器,这种技术在今天看来已经是屠龙技,因为很多芯片自带的 ram 跟 flash 都不知道大到哪里去了,而且太过低端的芯片没什么利润,干脆就不卖了。
    irytu
        56
    irytu  
       2021-08-20 21:58:16 +08:00 via iPhone
    Rust
    noroot
        57
    noroot  
       2021-08-20 22:15:08 +08:00
    不搞嵌入式和高性能领域的话,学 C++ 的回报太低了。
    galikeoy
        58
    galikeoy  
       2021-08-20 22:15:21 +08:00
    其他贴大多数都在喷前端 为啥上面全在推荐 js,不过 js 确实很好玩哈哈哈哈哈
    Leviathann
        59
    Leviathann  
       2021-08-20 22:17:06 +08:00
    @galikeoy 没有被 js 虐过的程序员是不完整的🐶
    w3cll
        60
    w3cll  
       2021-08-20 22:21:50 +08:00
    PHP 8.0
    fox0001
        61
    fox0001  
       2021-08-20 22:27:00 +08:00 via Android
    建议 Java 或 Python
    byzf
        62
    byzf  
       2021-08-21 00:29:19 +08:00
    不推荐 rust,建议至少要第五第六门语言当作兴趣学,硬要二选一建议 cpp,cpp 开源大项目很多,后续想看什么代码都有,rust 语法层面理论上带来了一些生产效率的提升,但被 java 、cpp 这种庞大生态带来的生产效率给完全覆盖了。你目标是打工的话 cpp 学完学 java 是最合理的。

    目标是日常使用建议 php 、js 、python 、ruby 。其他的等公司里要用该学啥学啥,什么全栈、k8s 、spring 啥的公司里用不上真的没必要自己学。
    namelosw
        63
    namelosw  
       2021-08-21 01:35:03 +08:00
    首先学你最感兴趣的。

    如果没有偏好,建议 JavaScript 和 C,主要是为了扩展自己的打击面。

    C++ 和 C 的打击面是一样的,坑巨多,完全不像 C 那么简洁,值得学习的思想却多不出多少,最多 template 黑魔法有点意思,不过折腾图灵完整的 template 不如去学 Agda Coq 这些正确建模的高级类型系统。

    除非为了开倒车找 Java 工作,不然 Java 也没啥好学的,Java 里该会思想,在 Python (OO) 和 Go (并发) 也学得差不多了,更别提 Java 的 OO 比 Python 鸡肋( composition 纯靠手缝),并发比 Go 鸡肋。

    之后还有空可以学学 Rust,挺不错的。
    TypeError
        64
    TypeError  
       2021-08-21 01:43:28 +08:00 via Android
    还是看兴趣和行业方向吧,Java 和 go 应用领域一个差异的地方是大数据那块比较成熟,大数据岗位肯定要熟悉 Java,
    Python 就是科学计算、数据分析、ML,
    前端 JS 、HTML 、CSS 加常见框架

    rust 感觉成本高,回报不一定好
    jeeyong
        67
    jeeyong  
       2021-08-21 01:58:04 +08:00
    pythoner....
    纠结再学个什么很久了...平均每隔一年就会花点时间看看.
    这个问题脱离需求真的不太好谈....
    在没有需求的情况下去说的话, 我觉得 python 和 nodejs 你可以考虑一个.个人优先推荐 nodejs.
    n0rval
        68
    n0rval  
       2021-08-21 02:10:29 +08:00 via iPhone
    c#
    admin7785
        69
    admin7785  
       2021-08-21 02:19:06 +08:00 via iPhone
    你好,我最近在 B 站学习泥瓦工,觉得很不错,推荐你也尝试下
    ericls
        70
    ericls  
       2021-08-21 02:32:18 +08:00 via iPhone
    不要用语言修饰程序员 语言只能修饰作品
    dswyzx
        71
    dswyzx  
       2021-08-21 03:07:43 +08:00 via iPhone
    @admin7785 俺会筛沙子,给大工打下手
    TangMonk
        72
    TangMonk  
       2021-08-21 10:16:32 +08:00
    rust 靠谱
    amirobotics
        73
    amirobotics  
       2021-08-21 11:04:50 +08:00
    学多,不如学精。Python 是未来必学语言之一。

    比如现在新加坡精通数据分析,ML 的专才不只是薪水高,也有机会在相关机构得到不错的工作。

    当下数据分析,ML 是未来主流趋势。

    Rust 学习成本不少,不意味着未来收获很高,如果未来的趋势是“安全”,Rust 就有机会成为主流。
    ArJun
        74
    ArJun  
       2021-08-21 12:09:45 +08:00
    貌似把算法和数据结构学好就很不错了
    BadMan
        75
    BadMan  
       2021-08-21 15:11:09 +08:00
    想我一样从 cpp 转 golang 就没有这种烦恼了
    Hanggi
        76
    Hanggi  
       2021-08-21 15:36:46 +08:00
    写完 Go 写 java 不会怀疑人生吗?
    matthewgao
        77
    matthewgao  
       2021-08-21 15:47:31 +08:00
    rust go 写服务 rust 写底层 绝配
    secondwtq
        78
    secondwtq  
       2021-08-22 22:03:11 +08:00
    如果你非要在这俩中间挑一个的话,建议先 C++,不必“精通”,至少了解了解。主要是你不知道 C++ 哪里做得不好,就不能理解 Rust 哪里做得好(以及他们俩哪里都做得不好 :) )。所以 C++ 是 Rust 的 prerequisite 。

    如果你不想学这俩的话,后端不知道,但 Python 和前端都值得继续学。
    yuchenyang1994
        79
    yuchenyang1994  
       2021-08-23 14:05:49 +08:00
    从实用角度说,还是 js 吧。c++就算了。剩下的,python ruby 选其一
    meiyoumingzi6
        80
    meiyoumingzi6  
       2021-08-23 14:35:02 +08:00
    试试 python?
    2i2Re2PLMaDnghL
        81
    2i2Re2PLMaDnghL  
       2021-08-23 15:13:23 +08:00
    语言承载思想,语言限制思想。
    推荐是编写思路跟原本的语言都完全不像的语言
    推荐 haskell 、ML 系或 lisp 系
    2i2Re2PLMaDnghL
        82
    2i2Re2PLMaDnghL  
       2021-08-23 15:18:22 +08:00
    忘记了 Erlang 和 Prolog

    Lisp 太经典,导致你学完发现其他语言都有它的影子。
    Ruby 则是对现代一些注重灵活的语言有很深的影响。
    2i2Re2PLMaDnghL
        83
    2i2Re2PLMaDnghL  
       2021-08-23 15:29:20 +08:00
    对了,塞个大概没有人会听从的奇妙建议:Ponylang
    没有锁、没有竞态条件,Actor 模型异步,对于所有权的区分比 Rust 更明确
    shellic
        84
    shellic  
       2021-08-24 09:13:43 +08:00
    我以为 go 都是第二语言起步呢,从就业角度建议你学 JAVA 、PHP8 、前端,要是玩玩可以搞 Python
    lasuar
        85
    lasuar  
       2021-08-24 10:20:04 +08:00
    都玩 go 了,下一个必须是 rust,py 是往上面学,你得往下面底层学
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2821 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 00:05 · PVG 08:05 · LAX 16:05 · JFK 19:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.