大家怎么看待 Java 的未来

2018-11-20 15:24:41 +08:00
 Neojoke
  1. 偏向业务的中前端开发,nodejs、Python、Ruby on rails,写业务都比 Java 快
  2. 偏向底层的没有 C/C++对操作系统友好,Rust 也后来居上
  3. 中间件产品,目前 Go 语言蓬勃发展,Http Service、消息中间件、分布式计算框架,Go 可用性非常高的产品正在崛起,性能比 Java 要好
  4. Oracle 对 JavaEE 的态度,有些危险
  5. 大数据、人工智能,这些热门,Java 虽然都能沾上,但使用起来太啰嗦

大家怎么看待 Java 未来的发展

22136 次点击
所在节点    Java
218 条回复
Neojoke
2018-11-20 19:00:36 +08:00
@pixstone 同学,这么长的讨论中,我并没有说 JAVA 未来会怎么样,只是列出来现在的情况,我本意是大家一起来聊聊 JAVA 的未来,但没一个人往题目上聊的,而且我发现国内的讨论环境不太乐观,有跑题的,有不清楚自己表达的目的是什么,不能接受对方说自己使用的语言一点缺点,必须是 JAVA 最大,JAVA 最牛逼,否则就是咒我 JAVA 要死,何其毒也? reddit 上国外的程序员在讨论问题的时候,都观点鲜明,但大家讨论都不会以怀疑对方资历来论观点的对错,也不认为资历大就是说得对,都比较尊重客观事实,讲究语言逻辑,而不是主观上去争论这语言是否伤害了我这个 JAVA 语言开发者的面子。
Neojoke
2018-11-20 19:07:17 +08:00
@crossoverJie 聊聊未来不应该是 JAVA 以后生态会怎么发展,官方开发组未来会是什么路线图计划,对其他的生态会怎么样支持这类的吗?开放性的帖子,本身是大家在畅想未来,没成想,那么多人容不得说 JAVA 目前半点不足,这就跟有很多年轻人,羡慕国外的民主开放,羡慕国外的自由,但一说 JAVA 的缺点,仿佛是伤害了自己的面子,务必要镇压下去的独裁者一般
glues
2018-11-20 19:07:49 +08:00
想一个语言撸一辈子的时代从来都不存在,Java 本身没什么硬伤,但是时代在变化,生产力在进化,要学会拥抱变化
zzzmode
2018-11-20 19:14:33 +08:00
java 语言也就这样了,但是 jvm 语言还是很有潜力的
beny2mor
2018-11-20 19:16:59 +08:00
@Neojoke "这么长的讨论中,我并没有说 JAVA 未来会怎么样,只是列出来现在的情况"
你描述的现状只有缺点没有优点,片面的描述是争端的开始。
luozic
2018-11-20 19:19:02 +08:00
现在语言运行时就三家 oracle 的 jvm,苹果的 llvm,微软的 clr,其他的语言运行时没有这三家这么工业化的东西。
beny2mor
2018-11-20 19:19:41 +08:00
1. ”大数据、人工智能,这些热门,Java 虽然都能沾上,但使用起来太啰嗦“
2. “ java 虽然用起来太啰嗦,但是大数据、人工智能,这些热门,都能沾上边”

3. pro: 大数据、人工智能,这些热门,Java 都能沾上边。con:java 用起来有点啰嗦。
Neojoke
2018-11-20 19:24:28 +08:00
@beny2mor 也就是说不能指出缺点?指出缺点就必须把优点带上?你说片面,我 ok,说出片面在哪,我们找到真正客观上的正确答案,这样大家都进步,上来就问搞几年开发?说我的意思是传播 JAVA 已死让大家下船?都用上 JAVA 这么先进的开发语言了,怎么思想这么保守,容不得别人说缺点,说缺点必须强调优点?思想这么中庸?难道技术界的人整天翻墙,谈论个话题,都要有条件?
Neojoke
2018-11-20 19:30:01 +08:00
@luozic llvm 是后置编译器,不是运行时,objective-C 但是基于 C 的消息分发系统,类似于 smalltalk,swift 基本的运行时也是基于 C,但也有虚拟机的概念,因为它引入了垃圾回收机制
felixlong
2018-11-20 19:35:09 +08:00
同样的业务逻辑用 Java 写和用 go 或者 nodejs 写差别会很大吗?重要的是搞懂业务逻辑。只有你完全懂了业务逻辑才有能力去评判哪个框架更适合你的需求。
yibinhp
2018-11-20 19:35:12 +08:00
你都认为 java 是废柴了,全程就是就是灌输这个观念,还有啥好讨论的?
weo0
2018-11-20 19:39:54 +08:00
@yibinhp 你可以看看他回复的其他的帖子 就是说 java 是废柴
bsidb
2018-11-20 19:40:51 +08:00
得具体地看应用领域。
在大数据分析应用上,目前还是 JVM 占主流。Hadoop 和 Spark 两者奠定了 JVM 在大数据分析平台上的地位,在另一个基于其他语言编写的分析平台火爆起来之前,JVM 应该都是主流。
AI 的火爆使 Python 在 AI 算法分析师方面非常流行,Java 在这方面生态显然落后于 Python,Java 应该会逐渐退出相关的应用。
luozic
2018-11-20 19:56:16 +08:00
@Neojoke llvm 可以嵌入做运行时的,因为它本身就是个后端
Neojoke
2018-11-20 19:56:17 +08:00
@yibinhp 同志,有一句话叫做,我虽然不同意你说的话,但我誓死捍卫你说话的权利
Neojoke
2018-11-20 20:10:12 +08:00
@weo0 我是说 JAVA 是废柴了,前提是除了中间件领域,不能这样说吗?
Neojoke
2018-11-20 20:16:47 +08:00
@luozic 斗胆插一句,llvm 的 bitcode 不是生成汇编了吗?难道运行时间 llvm 还参与?
luozic
2018-11-20 20:23:09 +08:00
现在 JDk 的 JVM 是挺牛逼的,但是编译部分太渣了,
@Neojoke llvm 是一个后端,最后结果是可选的,要不 kotlin scala 等等明显需要运行时的语言用它来搞 native
luozic
2018-11-20 20:25:11 +08:00
现在开源的编译前端里面(需要运行时的语言)最牛逼的还真就是巨硬开源的 Roslyn,Java 怎么不学习一下 C#的先进经验搞点牛逼的前端,浪费了那么好的后端 JVM
XinLake
2018-11-20 20:32:41 +08:00
Java 的硬伤是没有真正的泛型,这一点可能会有妨碍一些特定的软件设计方式,以至于影响到这门编程语言的未来。同类型的(解释型)语言如 C# 等,则没有这么明显的缺点。

搞了这么久开发,我没觉得语言最主要的,人才是最重要的。软件库像机器学习框架、数字图像处理等等都同时有多种语言的开发接口,有 Java、Python。。。而我还是使用 C++ API,因为不需要虚拟机。

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

https://yangjunhui.monster/t/509636

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

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

© 2021 V2EX