目前是 Java 码农,想再学一门语言 c++,c#,rust,go,各位大佬推荐哪一个

267 天前
 lemonteacode

目前 java 码农,想再学习一门语言,精力有限,在平时还要研究 java 的情况下只能再选择一门,复杂度不是问题因为也是学习嘛,个人比较倾向 rust ,因为现在炒的比较火,而且又是个新东西,系统及语言实用范围也比较大 纠结的点(以下的话都出自个人映像,在没有足够了解的情况下的胡言乱语,大家轻喷): 1:想自己做个桌面应用程序玩玩,毕竟 java 大家都懂,上班就写 web 后端,老实说是吃饭需要,必须一直研究,最好能跨平台,c++和 c#目前知道是不错的,因为还有.NET 这玩意,rust 因为目前确实不太懂哈不知道能不能(轻松)做一些比较美观的 gui 应用 2:性能最好要比 java 强是不,go 目前也是比较火,对于工作来说确实是个好东西,但是感觉(感觉啊!)这玩意跟 java 一样,就是大家都拿来搞一些工作上的东西,玩乐性不知道行不行,毕竟是工作之余搞点好玩的,再说 java21 都出来了而且 go 和 java 的性能差距也有一些讨论的声音

5829 次点击
所在节点    程序员
75 条回复
PTLin
267 天前
不应该着眼于语言,应该想一下感兴趣什么领域。决定不了研究方向自然就选不出来语言
lemonteacode
267 天前
@tobepro 666 ,看了一下,确实很不错,而且又可以学 rust 和 nodejs ,一举夺得了属于是
PTLin
267 天前
还有,不要为了 gui 学 rust ,tauri 能做的 electron 都能做,而且更成熟。而且 rust 的 native gui 库基本上全是半吊子。
lemonteacode
267 天前
@PTLin 主要是工作这么多年了,想回归学电脑的初衷,做一些酷酷的东西,但是就是工作太久思维僵化,有的时候都不知道什么比较好玩了,重新找回一下自己了属于是
anakinsky
267 天前
建议 js, electron 可以写一些桌面客户端,rust 、go 没听说过有啥知名 ui 库,cpp 太难太复杂,c#还行。不建议跨度太大的技术栈,写写 js 和你现在工作还有些关联经常可以接触到,其他技术时间长没接触就忘了
lemonteacode
267 天前
@anakinsky js 是好,但是可能是我这块太不了解了,总感觉太弱了,我想的是在做下面的事的时候顺便使自己更加深入一点,所以希望性能事最好比 java 强一点然后更加底层一点,可以和我目前的技术能力相辅相成这样
PTLin
267 天前
@lemonteacode 那我感觉你有很多方向可以选择呀,比如研究一下三大坑,操作系统,编译器,图形学。研究一下数据库实现,或者研究 gui 方面的。
就比如 gui 这个方面你就可以选择移动开发的 Android 开发,IOS 开发,还是 flutter ,RN 这种跨平台库。
学习 web 既可以写网页,有可以用 electron 写桌面程序,也可以用 RN 写移动端,还可以学学 nodejs 写后端。
剩下就是可以选择微软的 C# WPF MAUI 什么的,或者是学习 CPP 的 Qt 。有很多选择,选择语言是你选择了具体方向之后的。
manasheep
267 天前
C#比较合适,一是 Java 跳 C#没什么难度,非常平顺,二是 C#用 WPF 做桌面端很完善,还可以用 Blazor 做前端,这样能补充自己的技术栈。
lemonteacode
267 天前
@PTLin 666 ,大佬就是大佬,说到点上了,说得对,我是应该选择一个研究方向,那其实我是想往 gui 方向走,但是又放不下后端的担子想追求性能,后端做久了总是追求性能和优化,处于一个比较纠结的状态,这也是我倾向 rust 的原因。
shylockhg
267 天前
花里胡哨,直接学前端,组个全栈技能树。
winterbells
267 天前
当然是 kotlin 啦,无缝衔接(:doge

最近在看 rust ,有点绕不过来,全靠 GPT4 写代码
PTLin
267 天前
@lemonteacode 纯 gui 方向学 rust 就是浪费时间,死了这条心吧。
yazinnnn0
267 天前
首先排除语法丑的

玩的话尽量选动态类型语言, 如果选静态语言, 选类型推导能力强的

我个人推荐
scheme / racket
clojure / fsharp
rust / ts

排名分先后
AyaseEri
267 天前
当然是 ts+css+html 啦,你迟早得前后端全干了。
lizhian
267 天前
推荐 kotlin

第一,你学了 kotlin,是可以在工作中使用到的,跟 java 无缝衔接,混合编程.很多著名库/框架都官方支持 kt,例如 springboot,有些库甚至用 kotlin 重写.

第二,kotlin 就是一个缝合怪,吸收了很多其他语言的特性,作为过渡语言也是一个很好的选择,当你后面学你上面提到的那些语言,你会觉得很熟悉,并且很快上手.

第三,kotlin 可以写桌面软件,还能写手机软件,甚至可以写前端页面,并且这些都是官方支持的,非第三方框架/库.kotlin 官方野心很大,以后还会脱离 jvm 世界.

第四,学了 kotlin,真的不想回去写 java,kotlin 真香
huiyadanli
267 天前
我本职工作用 Java ,做过挺久的网站所以对前端 js 还算了解(原生 or Vue )。业余有大量 C# 的开源项目,最近还刚刚扒了一些 C++、Rust 的实现到 C#。

对于多门语言这块我很多实际落地经验。做什么用什么学什么。

对于语言的选择取决于你实际想要做什么,要做到什么程度?

如果你想要独立做跨平台项目,并且想要快速出活获得成就感,我只会推荐你学习 js 。

如果你是想要做 Windows 桌面端,无脑选择 C#。
YassoWithSpeaker
267 天前
js ts 我现在就在玩 ts ,也是后端,js 的作用远远不是 web 这一个层面,jsjs javascript -> java script -> script ->作为脚本语言,他能在几乎所有已知的环境运行,无论是鸿蒙还是安卓还是 winmaclinux ,甚至 word 。ppt 。pdf 里都能跑,平时写个 navicat 脚本,更何况还有 css 。性能,这玩意也不是服务器,一台服务器服务数万人,这一个电脑服务一个用户,谈什么性能,脸都不要了
c2const
267 天前
1.OP 要好玩的,C 系语言,那必然是 win 安全了 :)
2.C 语言,C++方面有 C with class 基础就行,然后写写汇编,熟悉下应用层和驱动中的 windows API ,直到正向开发学会了 :)
3.再学学逆向,,有精力捡起学的编译原理,写个简单的现代编译器也行,手写几个壳,看汇编如看小说,拖壳,调试,反调试,反反调试,这时候基本就进入好玩阶段,因为自己用的软件大多都能自己动手破解了(有能力还是建议支持正版), :)
4.然后是微软官方的 windows insider 和老潘的 windows 内核原理与实现,基本没有代码,结合开源的 WRK 源码(变动不大)和自己逆汇编,啃下来基本就水平爆炸了,同时期可以写写杀软、ARK ,或者对抗杀软、对抗 ARK ,与人斗也是其乐无穷,也算符合好玩的 :)
5.国内课程基本是圈钱骗小白,不如 1234 全程去参与 github 上的一些项目,看看前辈风采,不过需要自己抛光补全代码 :)
6.最后,缺钱做点合法副业可以,但注意别下海,因一念之差进局子了,毕竟这时候,国内外都能找到薪水不错又好玩的工作了 :)
lemonteacode
267 天前
@c2const 大佬牛皮呀
c2const
267 天前
@lemonteacode

1.不是大佬,现在也是外企躺平 :(
2.上面的内容只是大概,手机网页上随手打的,格式内容其实都有小错误 :(

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/979574

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX