<
查看: 7485| 回复: 27
收起左侧

rust or go or java

 
匿名用户-69WHN  2023-3-29 13:48:33
本楼:   👍  2
100%
0%
0   👎

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
background 是 python,会一点 c++, 应该学 go,Java 还是 rust?

上一篇:计算机的哪些方向或者那些技术路线还值得投入时间?
下一篇:小白求C++学习指导
地里匿名用户
匿名用户-529KI  2023-3-29 14:12:39
本楼:   👍  27
100%
0%
0   👎
Java应该是应用范围最广的,语法是C++的一个子集,但是Java学语法并不能干活,需要熟悉各种框架,Java的岗位数量和go/rust有数量级上的差别优势
go的主阵地是容器的编排和并发,逐渐吃掉了一些在Java后端的份额,go在oop上的设计和Java并不一样,主要是很多新项目在用。
rust的门槛比Java和go都要高,但是对于熟练掌握C++的人对rust的那些东西应该不会陌生,rust在oop的设计上和go类似,在后端上在逐渐追上go,去年听到好几个项目都是从go决定迁移到rust
如果从涵盖领域来看,Java和C++基本是独立的,go重合Java的一部分,rust理论上能够同时覆盖Java和C++

评分

参与人数 2大米 +3 收起 理由
resco + 1 赞一个
zea7ot + 2 给你点个赞!

查看全部评分

回复

使用道具 举报

newtaizi 2023-3-29 14:21:58 | 显示全部楼层
本楼:   👍  11
100%
0%
0   👎
全局:   5867
88%
12%
814
GO就没多少公司正经在用,狗家用得都少,最大的用户应该是黑车。
回复

使用道具 举报

本楼:   👍  10
100%
0%
0   👎
全局:   169
92%
8%
15
f2jing 发表于 2023-03-29 14:23:16
能否具体说说 消耗的资源,是计算 还是 存储的资源啊?谢谢,会加米
个人的感受。 go本身是编译成standalone app,不需要的library不会链入,生产的文件可以很小,这样你的 docker文件就会很小,节省内存和存储, Java runtime就很占地方,随便写点啥几百兆就没了。 这个问题Java 等到graalvm 把问题都解决了就和go一样了, 从另一个方面看Java可以很方便地做动态加载,go就不行了,编译成native images 另一个问题是reflection很不好处理, graalvm在生成native image过程中会把不用的class全丢掉,这个很难处理reflection,需要developer加入instruction, go天生没这个问题

Go routine很牛,一个 Linux native thread需要8m内存,记得go routine只占2k还是4k, 这样一个server可以handle许多request,记得好像有人做1million的concurrent requests。 传统的Java thread是map到 native thread, 如果用synchronized blocking进行开发
那能处理的就少了许多,需要达到同样的throughtput就只能加server, 这个问题两种方式解决  1 asynchronous programming, 从Java nio 开始到现在的 reactivate programming是这个方向, 再有就是project loom, 现在看估计JDK 21会release, 随着Java virtual thread的引入线程模型和go会一样,以前修炼的asynchronous programming又没用了

纯compute Java和go相差不大
回复

使用道具 举报

地里匿名用户
匿名用户-L6NWS  2023-3-29 14:02:36
本楼:   👍  3
100%
0%
0   👎
go, 云计算还有上升空间。
回复

使用道具 举报

Mikeypen88 2023-3-29 14:06:48 来自APP | 显示全部楼层
本楼:   👍  3
100%
0%
0   👎
全局:   73
96%
4%
3
大部分公司service应该都还是Java?
回复

使用道具 举报

地里匿名用户
匿名用户-OSEUV  2023-3-29 14:19:12 来自APP
本楼:   👍  5
100%
0%
0   👎
Java 优先,市场大,需求量大。

go不了解。

rust是小众语言,需求量小,除非特别感兴趣,而且足够资深,yoe比较高,才有优势。
回复

使用道具 举报

地里匿名用户
匿名用户-8FYYH  2023-3-29 14:27:15
本楼:   👍  9
100%
0%
0   👎
我写了5年的C++, 个人觉得用大家都看得懂的语言比较好跳槽....所以我推荐Java
回复

使用道具 举报

本楼:   👍  3
100%
0%
0   👎
全局:   1130
90%
10%
120
先把java学好再说,没经验肯定还是java最好。绝大部分初级岗位 没有特定的偏好 基本还都是java的。后续senior只用java的也很多,不行就再学其他的 那个时候再说
不过java还得学框架什么的
回复

使用道具 举报

本楼:   👍  0
0%
0%
0   👎
全局:   3152
91%
9%
302
LZ这样问应该心里是倾向rust的了
回复

使用道具 举报

地里匿名用户
匿名用户-HLR33  2023-3-29 15:03:57 来自APP
本楼:   👍  7
100%
0%
0   👎
newtaizi 发表于 2023-03-28 23:21:58
GO就没多少公司正经在用,狗家用得都少,最大的用户应该是黑车。
不懂瞎说,整个云原生都是围绕go, 我们公司新组都是在用go,消耗的资源是java十分之一。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

Advertisement
>
快速回复 返回顶部 返回列表