想学新语言但是对找工作没帮助还值得学吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
LosLord
V2EX    程序员

想学新语言但是对找工作没帮助还值得学吗?

  •  
  •   LosLord 2019-04-16 22:50:50 +08:00 3541 次点击
    这是一个创建于 2439 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是个 Java/Kotlin 后端开发者,也能写一些前端(能自己写项目但是写不了组件的程度)。

    最近辞职在家了,想学习补充下,硬件知识自认为凑合着(不是那种会组个电脑的水平),软件也能写,但是软件底层这一点自己就很无力了,因为常年写“高级语言”偏业务,所以系统层面的知识薄弱,在看很多文章的时候如果偏底层一点就会看不懂(就是有一种断层的感觉,很无力),所以想学个 Rust 在 Linux 下开发慢慢练手( C 语言已经忘到姥姥家了)。

    说实话自己 JVM 那一套还搞不清楚呢(当时能看懂,但是长久写业务压根接触不到就会忘了),但是自己又底层知识匮乏。学 Rust 短期看来是对找 Java 开发方面的工作没有帮助的,但是又想学学看来补充自己,请问这值得吗?

    15 条回复    2019-04-17 16:52:52 +08:00
    oblivious
        1
    oblivious  
       2019-04-16 23:02:16 +08:00 via iPhone
    值得学习。

    当初在学校也只会 Matlab,辛亏自学了 py,要不然工作面试要减很多分。
    ashlord
        2
    ashlord  
       2019-04-16 23:11:14 +08:00
    菜一枚,抛砖引玉。
    rust 是挺有意思的语言,学习一下没坏处,很是能开阔视野……
    但是 rust 学习曲线陡峭,更贴近函数式语言,能不能帮助 lz 加强底层开发能力比较难说……

    个人对 rust 的看法就是这门语言的设计要求太高,适合用来重写项目( rewrite in rust 哈哈);用 rust 从头写代码太容易有挫败感了
    其实 lz 的情况重新学习一下 c,温习一下 csapp 会更合适?
    考虑找工作的话,go ?
    LosLord
        3
    LosLord  
    OP
       2019-04-16 23:12:32 +08:00
    @oblivious 咱俩情况不太一样,python 的话可以直接找工作,况且我也不认为自己学个个把月能学会 rust,就算学会了我也不认为有几家公司需要
    jedrek
        4
    jedrek  
       2019-04-16 23:28:54 +08:00   1
    做长远些的投资学 Rust 不会错
    LosLord
        5
    LosLord  
    OP
       2019-04-16 23:45:39 +08:00
    @ashlord 谢谢,只是看了网评“ Rust 用了都说好”这种论调,所以希望学习一下,GO 的话因为有 GC 在我看来还是不够“底”,csapp 这本字典也是当时看能懂后来忘了,看来还是要复习了。
    jackmod
        6
    jackmod  
       2019-04-17 00:00:56 +08:00
    学底层的话还得读 csapp。补断层的话可以看看那些语言和 C 接口交互的原理。大概。
    pursuer
        7
    pursuer  
       2019-04-17 00:37:49 +08:00
    个人觉得底层还是学 C/C++,要是有 JNI 的需求的时候就可以拿来用了
    boris1993
        8
    boris1993  
       2019-04-17 00:51:57 +08:00 via Android
    值得,玩得开心就好,如果能帮助找工作那更好
    aodeng
        9
    aodeng  
       2019-04-17 09:06:04 +08:00
    学 golang 吧
    love
        10
    love  
       2019-04-17 10:17:22 +08:00 via Android
    底层和上层不用都会,两个完全不同的领域。
    no1xsyzy
        11
    no1xsyzy  
       2019-04-17 10:21:32 +08:00
    @LosLord 你说 GC,Rust 是直接控制生命周期,也不算多么底,说到底还是语言控制资源分配行为模式。
    GC 就是引用计数(还是可能泄漏)或者标记(对异步不算太友好),然后就是两个方法结合。
    而 Rust 就是通过各种规范要求引用计数恒为 1,对原型真的很麻烦,尤其你还没把程序逻辑厘清楚的时候你还要同时考虑生命周期,是人干的事吗?我认为这就是上面说的 “适合重写项目”,重写的时候程序逻辑已经很清楚了;另一种场景大概就是有专门的设计程序逻辑的流程甚至专员(架构师?)。
    所以其实应该是大量代码外包给各种不同公司或者是 Firefox 这样的大型多人协作项目适合的语言?因为代码质量控制比较困难,至少能从语言层面保证不要产生泄漏就很好。我没多了解,只是看到有人吐槽 Rust 生命周期就去看了下。
    no1xsyzy
        12
    no1xsyzy  
       2019-04-17 10:26:51 +08:00
    另外,如果没看过 SICP (计算机程序的构造和解释)的话我推荐看一下,这个真的强。
    自己用 define-syntax 重新写个对象系统可能是对 Java 帮助很大的。
    其实编程有自己的底层,叫做 λ 演算。
    crate
        13
    crate  
       2019-04-17 11:06:02 +08:00
    看一下 rust 很好 我觉得学习语言知识很适合这种设计的比较完备的语言,rust 也借鉴了很多优良的设计 (pattern matching, 宏,module system ),同时有涉及一些内存知识,起码我觉得学完了以后我对 c++理解提升了不少。
    alexmy
        14
    alexmy  
       2019-04-17 13:36:17 +08:00
    还是先找工作吧,储蓄多的另说。
    另外吧,你学了新语言,过上一两周,对现在用的 java 什么的也会陌生一点的,就更不利于找新工作了。
    LordChen
        15
    LordChen  
       2019-04-17 16:52:52 +08:00
    有工作的前提下,想学就学~
    没有工作还不快学个可以找工作的先?!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2753 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 06:10 PVG 14:10 LAX 22:10 JFK 01:10
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86