用 java 超过 10 年,golang2 年,就这两年的心得来看,golang 应该是能把 java 干死的。 但从招聘反馈的信息来看,java 的高薪资岗位明显多于 golang. 只怪 java 的沉淀太多,有很多事情 golang 可以替代的,golang 的实施成本要低很多,用 golang 的感觉也很舒服,但工作上因放弃 java 吃了大亏
101
billlee 2018-06-24 12:51:25 +08:00
JVM 又不是只用来跑 web 业务,golang 什么时候搞个 hadoop/spark/flink/elasticSearch 出来,再说取代 java 的事情吧
|
102
wangxiaoaer 2018-06-24 12:52:11 +08:00
@blless #100 所以我一直怀疑我到底是怎么了?大家都说 python go 这种语法简单,写起来快,但是我真的写起来想死,尤其是 python 那个缩进。 不知道是哪里的问题,其实我倒很想尝试 go 的,可惜很遗憾。
身边没有用 go 的,否则我就可以去弄个结对编程,看看问题出在哪里。 😂 |
103
sneezry 2018-06-24 12:55:55 +08:00 via iPhone
干掉是不可能的,这辈子不可能的。两者没什么可比性。如果真的可能有一种语言可以干掉 Java,可能性最大的是 C#。
|
104
feverzsj 2018-06-24 12:56:39 +08:00
java 根本不适合容器环境,资源占用是死结
|
105
wangxiaoaer 2018-06-24 12:57:22 +08:00
@miketeam #70 写 java 不长可以理解,但是建议你熟悉之后再开火,像我向 go 开火前可以真刀真枪用了 go 几个月,最后是在憋不出了。另外,我奇怪你参考 java 写 swift,不应该还是用 swift 的工具链吗,java 工具集咋惹到你了。
|
107
cmuler 2018-06-24 13:01:07 +08:00
我也是有点晕,什么微服务只是一种人们总结出来的一些架构的指导思想,跟语言有什么关系呢。而且微服务本身就是提倡 polyglot 的。在 vert.x 这样的框架中都已经贴心的把多种语言的接口准备好了。如果说到微服务可能需要的中间件,服务发现,熔断器,api 网关这些 java 的实现会比 go 的要少吗?
语言来说的话,go 真的是有在进步吗?你至少要用什么 rust 和 swift 来怼 java 还说的过去。 |
108
cmuler 2018-06-24 13:02:43 +08:00
@wangxiaoaer 没历史包袱的话可以试用一下 vert.x,比 spring 要小挺多的。
|
109
wangxiaoaer 2018-06-24 13:06:27 +08:00
@cmuler #108 已经在用了,的确轻便不少。但是感觉周边还是没有 spring 丰富,而且相关资料也少。
|
110
blless 2018-06-24 13:10:11 +08:00 via iPhone
@wangxiaoaer #102 python 都觉得上手无力我觉得应该是 tab !!😂用格式化插件或者 save 自动格式化,我觉得 java 或者其他强类型语言转 go 估计都会遇到类型后置,tab 缩进,不完整的面向对象实现😂。不过其实我关注的这些特性别的语言也都可以实现,go 只是提供了一套完备的官方解决方案。个人喜好也不太一样,go 我觉得可能适合我这样觉得项目管理要有规可循的人。但是我觉得程序员本身不应该被语言或者项目规范限制😂
|
111
wangxiaoaer 2018-06-24 13:18:07 +08:00 1
@blless #110
其实我总结了下,我就是离不开 IDE。 比如 Java,类库引入后,只要了解到这个库核心有哪些类就开干,至于这些类的方法,基本上不用看不用查,自动提示靠猜就差不多了。比如对某个字符串做什么操作,直接输入 "xx". 就够了,剩下等着 ide 弹给你吧。js 也差不多。 但 python 这种就不行,当年想对字符做处理的时候感觉很无力,你不知道改用那个方法,去 google、或者看文档是唯一的办法(除非之前用过,并且记下来了),而 java 的方法都在对象里面。 相比较而言,golang 好很多了,IDE 提示也还行,就是感觉偏底层。 |
112
sagaxu 2018-06-24 13:19:34 +08:00
@blless 资源泄露和 CPU 占用,JVM 上也有很多成熟的工具,Oracle JVM 内置的 JFR 就很强大了。
@wangxiaoaer Go 没有范型和 Exception,语法是很简陋,写起来快不假,但是要手写很多语法糖能解决的格式代码。 |
113
abcbuzhiming 2018-06-24 13:29:25 +08:00
@cmuler 虽然我也是靠 Java 吃饭的,但是你说“ Java 这么优秀的语言”?我就笑了,Java 是靠生态圈吃饭的好吗,它语言层面上哪里优秀了,旁边有个叫 C#的看着你呢,更别说还有那些新秀。说 Java 生态圈强大没人会说啥,说“优秀的语言”就搞笑了
|
114
abcbuzhiming 2018-06-24 13:33:37 +08:00
@Monstercat 我 eclipse inteJ,VS 都用过,前两者是不错的 IDE,但是你想和 VS 比?
|
115
miketeam 2018-06-24 14:19:10 +08:00 via iPhone
为撒评价一门语言的好坏一定要深入了解他个 1-2 年?作为入门的人最适合了。感觉到不合适的就是丑陋的。就我先前说的你就说存不存在吗?不能用你这几年被 Java 强迫习惯了的用法或者工具当正统,当有人说交互不够友好,开发不够方便那就是政治不正确。坦白说 vs 或者 Xcode 本来就比 ij 友好,强大你要死不承认那也是没办法了
|
116
elgae 2018-06-24 14:23:51 +08:00 via Android
啥,Xcode 比 ij 好? eclipse 不是工业级 IDE ?
|
117
yuyueMJ 2018-06-24 14:33:26 +08:00
看完所有的评论和回复,真心觉得这是 引战问题, 没有啥意义啊,我们中的大部分人只是站在既有的经验和角度上去思考问题。很容易忽略客观因素和大环境。多关注问题和元认知, 工具 自己用着舒服就好, 就好像有的老程序员敲了一辈子双飞燕, 我们现在动不动就是青茶红奶轴,只是工具啊。
|
118
miketeam 2018-06-24 14:36:37 +08:00 via iPhone
你如果觉得能写就是工业级那我也没办法,那记事本就是宇宙工业级的 ide 了,完不反驳
|
119
asahui 2018-06-24 14:42:05 +08:00 3
为什么一个有 12+年以上的程序员会问出这样的问题。
|
120
miketeam 2018-06-24 14:45:27 +08:00 via iPhone
干嘛不允许人怀疑吗!如果有一天有数学家和你质疑一加一等于二的问题,你应该让他给你签名,因为这个人可能是个天才
|
121
balabalababala 2018-06-24 15:15:16 +08:00
java 的生命力太强了,应该的领域太广,很难替代
|
122
explicit 2018-06-24 15:24:11 +08:00
100 年以内不可能
|
123
askfilm 2018-06-24 15:34:32 +08:00
v 质量越来越低了, 痴人说梦,新东西就一定就是好东西? 我倒觉得成熟的方案才是最可靠的! 再说了指不定明年会出来个 comelang 呢
|
124
youxiachai 2018-06-24 17:00:15 +08:00 1
@miketeam 居然有人夸 xcode ???
|
125
WinMain 2018-06-24 17:03:09 +08:00
我估摸着明天就能干掉!
|
126
gemini767 2018-06-24 17:07:50 +08:00 via Android 3
java10 年白写了。。。编程经验十几年居然还认为语言是工程的关键。。或者说你其实就是为了引战?
|
127
FunnyCodingXu 2018-06-24 17:11:52 +08:00
楼主十年 Java 到底把 Java 和 Jvm 和语言底层吃透了多少?
|
128
notreami 2018-06-24 17:43:14 +08:00
PHP 说要替代 Java
C#说要替代 Java Ruby 说要替代 Java NodeJS 说要替代 Java Scala、Kotlin 说要替代 Java Golang、Swift、Python 说要替代 Java 一群国产手机颠覆 iphone 发布会即视感,做好自己编程语言擅长的不好嘛?真想替代,麻烦先把 Java 擅长的场景覆盖了,让开发人员学这门语言就不需要了解 Java 任何技术。 |
129
lujiajing1126 2018-06-24 17:56:13 +08:00 via iPhone
什么?大清又亡了?
|
130
jowuIM 2018-06-24 17:57:22 +08:00
没有这个时候,二者目标不一样,还不如问 Javascript
|
131
gowk 2018-06-24 18:58:33 +08:00 via Android
这么说吧,Java 是门好语言,未来还将长期存在,Go 发展越来越好,新项目建议使用,Rust 我觉得不太可能发展起来
|
132
cocode 2018-06-24 20:56:17 +08:00
@xypcn 额,关于进步这件事嘛,我真不觉得换个语言就是进步。。。语言其实能满足那些常见的功能也就行了,不用太花里胡哨。
其次关于取代这件事,我觉得取代的不是语言,而是生态环境。你可能要说了,我只要把 Java 生态的那些组件也用 go 写就好了,首先,在你写这些的时候,别人的生态可能有更大的发展了,其次,如果你新写的东西没有足够的吸引力——例如性能的大幅度提高,别人是不会换的。 然后嘛,关于 docker,与其说是 go 大发神威,不如说说 linux 的大发神威,毕竟 docker 重度依赖的是 linux 里 namespace,cgroup 等,go 只是让他们更好用了,换个语言也可以实现,但是没人想起造轮子,所以你真想让这个语言发展壮大不如好好想想你能先用 go 把那个领域给开辟了,到时候自然有人会去学习研究的,这不比当传教士好多了。 最后嘛,微服务方面没用过 go,不过 go 在分布式领域里倒是挺不错的,最近也因为 MIT6.824 在学。 |
133
Rorysky 2018-06-24 21:11:59 +08:00
@Raymon111111 #6 谁说不可能的? 换个 cto 看看
|
134
Discuss 2018-06-24 21:52:19 +08:00
golang 取代 java 是肯定的事情,毕竟晚出生这么多年,没有历史包袱从零开始设计,站在那么经验的积累之上。当然劣势自然就是生态建设不少一朝一夕之功,或许 5 年之后或许 10 年之后吧
|
136
jason19659 2018-06-24 22:23:46 +08:00 via Android
现在也开始有 golang 吹了?
|
137
z3jjlzt 2018-06-24 22:48:44 +08:00
是生态的问题,
要是 golang 用的人多, 那就明天吧 |
138
lengleng 2018-06-25 08:54:27 +08:00
明天
|
139
Raymon111111 2018-06-25 10:31:17 +08:00
@Rorysky 这种人当不了 cto
|
140
vncntd 2018-06-25 11:03:26 +08:00
golang 这门语言相比 java 设计缺陷太多,很多自以为是的设计。包括生态也不如 java 成熟,要踩的坑很多,我不看好它的后续发展。
|
141
fengche361 2018-06-25 11:10:23 +08:00
之前 PHP 也这么想过
|
142
miketeam 2018-06-25 12:17:05 +08:00 via iPhone
swift 没说要替代 Java,不要挖坑好吧!
|
143
xuecat 2018-06-25 12:32:07 +08:00
说得好,我家 nodejs 天下第一
|
144
youxiachai 2018-06-25 13:08:09 +08:00
@Discuss jvm 语言了解一下??无缝对接 java 生态......真不明白吹语言特性的..还能有 jvm 上的五花八门语言强..orz
|
145
spice630 2018-06-25 13:15:41 +08:00
又在打嘴仗,没意义
|
146
Navee 2018-06-25 14:19:13 +08:00
大家都给我 PHP 一个面子,不要再吵了!
|
147
sunzhenyucn 2018-06-25 14:43:46 +08:00
下次麻烦了解清楚再开炮,免得丢人现眼。
|
148
ren2881971 2018-06-25 16:23:14 +08:00
go 死了 java 都不会死。。
|
149
24bit 2018-06-25 20:03:53 +08:00
干掉 java 有什么好处 ? 编程语言的排名就那么重要吗 ?
|
152
zgqq 2019-06-21 12:56:29 +08:00
现在用 golang 的公司确实变多了
|