好像很多写别的语言的都觉得 Java 又笨又重配置又难部署成本高,还有巨大的安全隐患

2022-05-07 03:34:09 +08:00
 mikulch

可能是以前 j2ee 那一套真的给大家留下了巨大的阴影吗。

7679 次点击
所在节点    Java
65 条回复
yixin026
2022-05-07 10:43:27 +08:00
java 确实感觉好难用,一个新手要开发 java,得配置 java,idea,idea 插件,maven 这一大堆东西,idea 还经常抽风,maven 不翻墙也经常连不上,偶尔遇见 eclipse 的老项目也是抓瞎,一旦使用稍微冷门点的东西比如 bazel 和 osgi,代码高亮跳转都要搞半天,而差不多的 c#,一个 vs 解决百分之 99 的问题..
RainCats
2022-05-07 10:48:01 +08:00
@mekingname 这个难道不是使用者的问题吗,换什么语言都是这样
mekingname
2022-05-07 10:49:40 +08:00
@RainCats Java 就鼓励这样深层嵌套文件夹。Java 程序员都被教坏了。
liangkang1436
2022-05-07 10:53:18 +08:00
@mekingname 这不是 Java 的问题,这是写 Java 的人的问题
windyboy
2022-05-07 10:59:39 +08:00
讲真我现在觉得 spring 全家桶基本上已经到达旧 j2ee 这么重的程度
liuhuansir
2022-05-07 11:00:09 +08:00
@mekingname java 是鼓励把域名反过来当包名,啥时候鼓励深层嵌套了?
zapper
2022-05-07 11:08:24 +08:00
go/monthly
ghost024
2022-05-07 11:10:49 +08:00
@mekingname 是 Java 导致的深层嵌套还是程序员自己喜欢深层嵌套啊,你别啥锅都往 Java 上面扣啊,你也可以平级搞很多个包啊,Java 也是 ok 的啊,而且本来就是一个 namespace 的问题,啥都是语言的问题呗。。。。。。
seanthecat
2022-05-07 11:11:23 +08:00
Java 本身的安全隐患比 C/C++小多了,至少没有指针就很难有各种内存漏洞。漏洞主要是在应用层,各种五花八门的框架提供了整套整套的功能,很难完全没有漏洞。但这不是 Java 的锅,不管什么语言搞一个 Java 这样的生态不见得能有更少的漏洞。
libook
2022-05-07 11:12:24 +08:00
以前作为一个 Java 新手的感受是,学 Spring 那一套只能照猫画虎,站在层层抽象外无法看透内部原理,以至于自己无法理解自己写的代码,各种注解更加重了这种困惑;然后就是各种 PO/POJO/VO/BO/DAO/DTO ,反正不管写啥,先照着固定模式把这些“O”写一遍;最后就是终极大杀器——Tomcat 等一众容器,接手一个项目可能要花很多天才能在本地搭好一个可以跑的开发环境,各种依赖的版本兼容性需要跟同事打听才能了解到……最终的天花板就是 JVM 原理,我记得当时凡是 5 年以上经验的同事都人手一本 JVM 的书。

后来我在想,Java 作为历史最悠久的技术栈之一,技术方案已经进化得非常成熟,但对于新手来说,可能还是得亲自走一走整个进化过程,才能理解为什么当前的 Java 是当前这个样子。但那样的话,也确实需要相当多的时间,来承载这个技术栈悠长的历史。

当然我已经不用 Java 很多年了,也有耳闻 Java 依旧在进化中,比如当前顺应微服务潮流的解决方案,似乎对新手友好了很多。但 Java 技术栈似乎被其他语言抢先了一些宣传推广的机会,国内的技术发展模式跟海外很多地区有较大的区别,国内的技术宣传比较擅长贩卖焦虑,比如各种捧一踩一和取代论,而国内的开发者普遍有从众心理和“被淘汰”焦虑,以此催生出了“面向简历开发”等现象,最终导致一些宣传工作做得很好的技术栈得到了大量的推广和应用,甚至一些本来跑得好好的项目也会被强行换一些“新潮”的技术栈重写。

一门技术要想在开发者中站稳脚,就得集思广益(开放)、快速迭代,顺应业务需求变化、生产需求变化、开发模式变化,我不清楚 Java 技术栈是否是这样的,如果是的话,就一定会长久发展下去的。
hello2090
2022-05-07 11:19:58 +08:00
@SimbaPeng 200 万以下搞技术的都是混口饭吃,就别挑肥拣瘦了。
banmuyutian
2022-05-07 11:28:14 +08:00
各种"O"和路劲 /文件夹嵌套是架构设计(开发者)的问题。。
jdk 半年一个版本迭代,但很多人仍停留在 JDK8 ,这个也是开发者的问题
说到 Java ,上来就是 Spring 全家桶的各种配置,能不重么?就好像说去学 JS ,一上来就是 Vue ,React ,NPM ,WEBPACK 啥的一大堆不一样又笨又重?
每门语言有不同特性适合不同用途,老怼产品经理搞不清需求,程序员也要明白自己需求才对啊,反正我的需求就是赚钱,用 Java 不妨碍我赚钱
BBCCBB
2022-05-07 11:37:31 +08:00
@windyboy 你也可以不用全家桶, 就用他核心的 ioc, aop, 其他各种组件自己写轻量级的.
NoKey
2022-05-07 12:04:09 +08:00
@mekingname 这个是典型的套着模板写代码,如果就是很简单的功能,完全不用搞很多层嵌套,开发者自己的问题
lmshl
2022-05-07 13:16:34 +08:00
我们写 Scala 只觉得 Java 笨,但大家都在 JVM 上跑,一样的重,配置难,部署成本高。
但安全隐患是真的,语言弱鸡只能依赖运行时反射,你看 CVE 列表是不是有一半漏洞都是因为 Java 笨,不够灵活动态,开发着自作聪明的反射,动态解释引入的漏洞?😏
MakHoCheung
2022-05-07 13:18:24 +08:00
@storyxc 假如你这个小工具换成 JS 或者 Python 还不是一样,可能自包含做得还不如 Java ,需要你朋友自个儿装 NodeJS 或者 Python
zinwalin
2022-05-07 13:20:13 +08:00
jvm 的问题
zinwalin
2022-05-07 13:20:50 +08:00
@xuanbg 自动化出问题呢,难调试
zinwalin
2022-05-07 13:22:15 +08:00
@sheeta 再来个搜索,酸爽
461da73c
2022-05-07 13:29:56 +08:00
@xuanbg 我那个年代 J2EE 太流行,各种配置要吐血,后来的什么 SprintBoot 都没碰过,不搞 JAVA ,舒畅太多。

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

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

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

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

© 2021 V2EX