只有我觉得 Java 很糟糕吗

2019-03-02 13:35:41 +08:00
 bokchoys
环境配置,到编写代码,都比其他语言复杂一些
为什么那么多公司用?
8315 次点击
所在节点    问与答
93 条回复
tairan2006
2019-03-03 12:32:02 +08:00
Java 的优越性在生态上,语法简单也是优势。但是又臭又长,包特别大,泛型实现垃圾。

.Net Core 语法好,生态差。

Golang 语法简单,生态也好,但是没有泛型,抽象能力差。 所以 Go2 才是最好的选择(还没有
gamexg
2019-03-03 14:18:04 +08:00
在 C#、go 还没有出来时,java 基本是大型项目最好的选择吧。

c/c++ 的内存管理是个大问题,即使顶级公司一样会出现空指针、内存泄漏等问题。

php、python 等不是静态类型语言,小项目没什么问题,大型项目真的是重构火葬场。

java 的槽点大概是写起来非常啰嗦,非 java 程序员,记得一次临时用 java,发一个 http 请求用了 30 多行。但是这个问题并不是无解,使用第三方库后一个 http 请求几行就能够完成。

.net 系列现在的确挺好。但是 x 年前,.net 只能在 windows 下运行。第三方开源尝试实现 linux 支持,结果被微软威胁,我记得开源版被迫停止开发并执行代码审计移除可能侵权的代码。现在微软倒是开始拥抱开源了,但是黑历史在那里。

go 太年轻了,生态倒是还好,但是开发人员招不到(付费简历库全省居然只有 3 份简历...)。还有说不支持泛型是个问题的,不过我感觉无泛型支持问题倒是不大,也就个别时候多写点代码吧。
wangxiaoaer
2019-03-03 14:31:46 +08:00
@tairan2006 #80 哈哈哈,不知道有生之年能不能等到 go 的泛型和方便的二进制发布以及包管理,目前的 gomod 感觉用起来还是不爽,总感觉一个包管理直接引用源代码很不灵活。
Cbdy
2019-03-03 14:34:10 +08:00
@wangxiaoaer
Go 更像一门 DSL,这些设施不要也罢
当时怎么说的来着? Go 不需要泛型
wangxiaoaer
2019-03-03 14:41:39 +08:00
@Cbdy #83 如果作为 DSL 的话,那就没必要跟 java c#比较了,但现在看来,远远不是只作为 DSL 的存在。

所以“ go 是 c++的升级版”这种观点,我觉得在现阶段还是比较稳妥的一种说法。目前跟 java 还是没法比。
wangxiaoaer
2019-03-03 14:47:28 +08:00
@lhx2008 #11 我也觉得 java 不管是从可读性还是编码速度都很好,即使可能会有乱用设计模式绕来绕去,但是起码读起来很清晰,写起来也没有各种千奇百怪的符号。

最起码,除了泛型的 < > 和 lambda 的 => 其他都不需要组合键。
Cbdy
2019-03-03 15:17:31 +08:00
@wangxiaoaer C 语言我信,C++就算了
cuebyte
2019-03-03 17:12:24 +08:00
@orangeade 有更多的庫和工具是用 Java 寫的啊,Node 和 Python 也是,這並不說明任何事啊。
closedevice
2019-03-03 20:26:40 +08:00
忌讳半瓶子水的时候发表任何语言的评论,语言的好坏,得先等你深入了解并实战几门语言之后,有更好的结论.上来就来各个 XXXX 语言不好,你得举出各种同样情况的对比案例,然后才能进一步分析吧
sweetx523
2019-03-03 20:31:41 +08:00
半吊子水的学生==。
ifxo
2019-03-03 20:32:55 +08:00
主要是用的人多了,没人敢说它不行,好比皇帝的新衣,你会说自己傻吗
yingfengi
2019-03-04 08:54:04 +08:00
生态是一切。
haon
2019-03-04 09:02:51 +08:00
借楼问一下 go 的生态好在哪里

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

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

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

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

© 2021 V2EX