V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dog82
V2EX  ›  Java

日经吐槽:现在的 Java 语言真的有点令人恶心

  •  1
     
  •   dog82 · 2 天前 · 8221 次点击

    我之前在 java1.4/1.5/weblogic 时代做了多个 java 项目,后来转战 Go 语言多年,现在再返回来做 java 项目,有点 hold 不住了…… 1 、各种语法糖叠加起来,非常不直观。盐多了加水,水多了加盐,看类库的源码就像看甲骨文,脑子快拧成麻花了; 2 、整个技术体系 java+spring boot+cloud 太庞杂,学习成本和使用成本非常高。

    87 条回复    2025-11-07 11:36:04 +08:00
    rockddd
        1
    rockddd  
       2 天前   ❤️ 2
    自从用了 claude ,感觉什么语言区别不大了,不会的也能上手
    nkidgm
        2
    nkidgm  
       2 天前   ❤️ 1
    @rockddd 对,有 AI 的加持下,语法层面没啥区别,恶心语法让 AI 去咀嚼,最重要是自己熟悉各语言最适合的使用场景,在选好语言后就让 AI 去写就行了。
    xiaomushen
        3
    xiaomushen  
       2 天前   ❤️ 1
    spring cloud 本来就是垃圾山,有多恶心是多恶心
    akajoker
        4
    akajoker  
       2 天前
    java 没啥语法糖吧
    xubeiyou
        5
    xubeiyou  
       2 天前
    Java 生态好就容易这样,前期各种造轮子 集成功能越来越多 代码就越来越臃肿。语法糖也是因为之前语法缺失过于繁琐。
    crossoverJie
        6
    crossoverJie  
       2 天前
    抛开技术框架,就语言本身来看,现在最新的 JDK25 已经比以前优雅很多了,推荐让 AI 生成最新的代码参考下。
    cmdOptionKana
        7
    cmdOptionKana  
       2 天前
    你接触的语言太少了,Java 语法算简单的。不过最近几年各大语言疯狂添加新语法、新特性倒是真的。
    wizzer
        8
    wizzer  
       2 天前
    budwk.com 非 Spring ,学习成本和使用成本比较低
    roundgis
        9
    roundgis  
       2 天前 via Android
    Use kotlin
    Goooooos
        10
    Goooooos  
       2 天前
    我还嫌 java 语法糖太少了
    HojiOShi
        11
    HojiOShi  
       2 天前   ❤️ 2
    本来想说“什么? java 还很多语法糖”,看到 lz 是从 java1.4 时代过来的老人,对这种这么多年还在代码一线奋战的老兵只有敬意。
    Narcissu5
        12
    Narcissu5  
       2 天前
    什么? Java 语法糖多😳
    kandaakihito
        13
    kandaakihito  
       2 天前   ❤️ 4
    现在使用量最大的几种语言,js 、ts 、py ,哪个语法糖不比 jvav 多。。。?语法糖熟练了之后才是真的爽(

    倒不如说 golang 才是真的有点逆天,原生库甚至不能对 slice 进行 distinct ,还得搁那 for
    jackOff
        14
    jackOff  
       2 天前
    看项目体积和业务量,可以评估要不要使用一些庞大的框架和架构,不是所有项目都适合 spring 全家桶
    yongdaimi
        15
    yongdaimi  
       2 天前
    你是没用 kotlin, kotlin 项目到一定量级之后,根本看不懂,相比之下 java 还算好的了。
    Ketteiron
        16
    Ketteiron  
       2 天前
    @crossoverJie 还是远不如 kt ,kt 至少能少写一半废话
    migu
        17
    migu  
       2 天前
    为啥有人觉得 kt 好啊,一堆的关键字、语法糖看的脑壳疼,不借助文档和 AI 根本没办法入手
    hafuhafu
        18
    hafuhafu  
       2 天前
    java 糖还多啊...
    而且不是看自己需求么,选择权完全在你手里,单纯 Spring Boot 单体完全够应付 99%的需求了。
    你上来就非要整什么微服务放哪个语言不是都一样么。
    DonaldY
        19
    DonaldY  
       2 天前
    去用下 kt 、scala 再看看 0.0
    anonydmer
        20
    anonydmer  
       2 天前
    第一次听说 java 的语法糖多...
    dog82
        21
    dog82  
    OP
       2 天前   ❤️ 1
    @HojiOShi 我最早写过 j2me ,那时还没有 android ;写过微软的 J++,用过 borland jbuilder ,中间件用过 ibm 的 websphere ,后来才用 bea 的 weblogic

    那时主要写 ejb ,手搓 js+jsp ,后来慢慢有了 ajax prototype jquery extjs tomcat resin jboss glassfish jboss eclipse struct hibernate

    我家里至今还有一本 rod johnson 写的 Expert One-on-One J2EE Design and Development
    issakchill
        22
    issakchill  
       2 天前
    java 有啥语法糖的?...
    chenmobuys
        23
    chenmobuys  
       2 天前
    都是嫌 java 语法糖少的,头一次看到嫌弃语法糖多的。。。
    ohoh
        24
    ohoh  
       2 天前
    java 是设计模式多,随便一个框架,上来就是各种设计模式,但是那是人家框架搞好了的,其他的就是按部就班的开发就是。要知道以前面试,会设计模式会比较有优势
    mmdsun
        25
    mmdsun  
       2 天前
    这个问题很简单 spring boot + Kotlin 。不喜欢 spring 可以换成 Vert.x + Kotlin
    Wh1te
        26
    Wh1te  
       2 天前
    @Narcissu5 OP 应该是纵向对比的,现在的 Java 和 1.4 1.5 时代的 Java
    zhazi
        27
    zhazi  
       2 天前   ❤️ 1
    拉不出屎怪地球没引力
    XDiLa
        28
    XDiLa  
       2 天前
    语言只是工具,你对这个语言不满 那你就创造一个满意的语言让大家用啊。天天一副怨妇的样子。真让人且嘘
    reeco
        29
    reeco  
       2 天前
    是你老了,学不动了
    chendy
        30
    chendy  
       2 天前
    java 这套玩意使用成本要是真的高,就不会随便找个人培训两天就拉出一吨微服务了
    最干干巴巴没意思的语言,写多了都能编程阳痿,还能吐槽这么多只能学不动了
    Ayanokouji
        31
    Ayanokouji  
       2 天前
    你骂 java 和 spring boot 不行
    你骂 spring cloud ,我举双手赞成
    yolee599
        32
    yolee599  
       2 天前 via Android
    那是 spring 的问题,不是 java 的问题,java 代码风格还算统一的了,随便换人都能看懂
    xiaowangge
        33
    xiaowangge  
       2 天前 via iPhone
    Java 语法糖真不多。

    广为吐槽的 setter getter 用 Lombok 注解。
    动不动就写接口 ServiceImpl ,也可以不写接口。

    最后,玩玩 Netty 、Vert.x
    cloudzhou
        34
    cloudzhou  
       2 天前   ❤️ 1
    总有一天我要写个文章喷一下这些日常吐槽 Java 的半吊子,一有点学习曲线就怪 Java

    java1.4/1.5 过来到现在,少说 15 年左右了吧,Java 进步有多大,Jdk 25 都出来了
    Java 语法可以说平铺直叙,最多就是一个 streams 需要熟悉点

    java 不是一个单一的语言,是整个庞大的组件、库的学习成本,再加上 JVM 和大数据等等
    rust ,kotlin ,scala 学习曲线不高?理解度不更难?
    Narcissu5
        35
    Narcissu5  
       2 天前
    @Wh1te Java 是对加语法特性最慎重的语言没有之一,现在的 Java 和 1.4 1.5 基本没多大区别,如果当年能看懂现在基本也没什么问题
    xiaomushen
        36
    xiaomushen  
       2 天前   ❤️ 1
    @chenmobuys 你多写一些 Go ,自然就会嫌其他现代化编程语言,语法糖太多
    liuxey
        37
    liuxey  
       2 天前
    致敬老兵!

    话说回来,让现在的程序员去动 j2me 、websphere 、ejb 、struct 这些“老古董”才是真的脑子快拧成麻花,SpringBoot 至少能让新手程序员快速上手出货,当今软件开发的模式和 15 年前已经有了非常大的变化,要用变化的眼光去感受整个行业,不能停留在原地固步自封。

    就我个人观点而言,SpringBoot 相比于 SSH 、SSH2 等古老架构体系,不仅是 Java 生态的成长,更是解放生产力的工具。
    xiaohanliang
        38
    xiaohanliang  
       2 天前
    我个人觉得有设计模式其实是好事, 你撸业务逻辑就完了. 理论上设计模式如果能玩 6 应该每个业务逻辑一小块, 好懂好维护. 但它之所以让人反感, 就因为我们实际接触到的设计模式全都套错成四不像了.

    现在业务逻辑反过来要强行适应这种畸形的设计模式, 成我去伺候它了? 根本原因还是当时设计架构的时候不够懂业务, 瞎理解瞎套, 什么场景能出现什么场景不可能出现, 这事儿没琢磨明白就开始套, 最后该抠的细节, 成我去兼容它. 不该抠的细节到斤斤计较, 看起来就很 sb.

    go 就没什么设计模式, AKA 大家一起写流水账吧, 其理念类比 Python, 就没想过要你好好做架构拆分, 往系统化模块化去拆分, 新人上手没难度两三天开写, 没啥设计模式快速出货就完了.
    sky3hao9
        39
    sky3hao9  
       2 天前
    go 和 java 我都用过几年, 现在两个也在使用中, 各有各的优点.
    但我自己更喜欢 go, 感觉可控度更强, 简洁有力, 人码合一不敢说, 但心思更多的是在思考业务逻辑和设计上, 很自由, 很惬意
    kneo
        40
    kneo  
       2 天前
    但凡你能举个例子出来。
    octocatami
        41
    octocatami  
       2 天前
    swift 那语法糖,多的不要不要的
    rb6221
        42
    rb6221  
       2 天前
    有 2 种可能:要么是你常年写简单逻辑,没有写过复杂逻辑,也不喜欢复杂逻辑;要么是你不喜欢他的语法本身。
    那么为了论证这个问题,评价一下现代的 php 吧。
    howfree
        43
    howfree  
       2 天前
    无能狂怒
    bobox
        44
    bobox  
       2 天前   ❤️ 1
    一直觉得 spring boot 毁了 java
    liangdi
        45
    liangdi  
       2 天前
    成也 spring boot 败也 spring boot ?
    crackidz
        46
    crackidz  
       2 天前
    Java 其实还好,只是写 Java 的人,恶心的太多了
    Leviathann
        47
    Leviathann  
       2 天前
    鉴定为没学过 swift 导致的
    NESeeker
        48
    NESeeker  
       2 天前   ❤️ 7
    go 学长这招太狠了
    zhady009
        49
    zhady009  
       2 天前
    @howfree 确实 SpringBoot 还不够轮椅说是,Java 太甜了有点难绷
    7beloved
        50
    7beloved  
       2 天前
    Java 依旧是业务开发第一语言
    anivie
        51
    anivie  
       2 天前
    java 有语法糖?
    ychost
        52
    ychost  
       2 天前
    @xiaomushen #36 Go 和 Kotlin 我写了不少,Go 写起来还是很费劲的,代码量比较大
    siweipancc
        53
    siweipancc  
       2 天前 via iPhone
    ai 写的代码更是狗屎好嘛,我都得给它思路优化代码不然能把我内存干爆
    xulolololololo
        54
    xulolololololo  
       2 天前
    人生苦短,我用 python
    nicocho
        55
    nicocho  
       2 天前 via Android
    @dog82 哈哈,实习时候的团队就是做就 j2me,隔壁团队做塞班的
    unco020511
        56
    unco020511  
       2 天前
    你都用 java 了还有啥好吐槽的,这种语言再怎么改也很难用
    yannxia
        57
    yannxia  
       2 天前
    其实完全可以用 Go 的那种写法来写 Java ,其实也挺干净的,Java 主要写的人都被一套模式给套住。
    Vaspike
        58
    Vaspike  
       2 天前
    spring cloud 给 spring boot 提鞋都不配
    queifa
        59
    queifa  
       2 天前
    Java 语法糖不多吧,看看隔壁几个语言就知道了
    craftsmanship
        60
    craftsmanship  
       2 天前 via Android
    Go 和低版本 Java 写得多了 肯定会嫌现代语言糖多 糖多的语言写多了 反过来还会嫌弃 Java 怎么这么啰嗦难用
    darkengine
        61
    darkengine  
       2 天前
    Java 只是啰嗦 - 为什么啰嗦?就是因为语法糖太少了
    JoeDH
        62
    JoeDH  
       2 天前
    Java 写东西很舒服,特别现在 AI 帮你把那些罗里吧嗦的玩意写了,关键逻辑让自己写,那就更舒服了
    bbbblue
        63
    bbbblue  
       2 天前
    java 语法糖多???????🤣🤣🤣🤣🤣
    charles0
        64
    charles0  
       2 天前 via iPhone
    Java 才这点语法糖,看看隔壁的 C#,真学不过来啊
    whyrookie
        65
    whyrookie  
       2 天前
    已经好久没写 Java 了,都用 Kotlin
    xieshaohu
        66
    xieshaohu  
       2 天前
    Java 、Python 、TypeScript ,还是觉着 Python 最干练。
    MindMindMax
        67
    MindMindMax  
       2 天前
    问题不在 java ,在于你用了 golang 后再用回 java
    Belmode
        68
    Belmode  
       2 天前   ❤️ 1
    术业有专攻,不同语言有不同领域的用途,从不搞歧视,不捧一踩一
    在不同的项目上,都是我干活盈利的利器
    9RWBdC758updU311
        69
    9RWBdC758updU311  
       2 天前   ❤️ 1
    AI ,已经,攻破,一切
    sunmker
        70
    sunmker  
       2 天前
    C# 语法糖也多
    kylix
        71
    kylix  
       2 天前
    kotlin 挺好的啊,用了后有点回不去 java(8)了
    NickX
        72
    NickX  
       2 天前
    1.4/1.5 。。。十多年了吧。。。
    dragondove
        73
    dragondove  
       1 天前
    spring boot 的学习成本很低,低到不太会 java 的人经过简单培训就能写后端 json api ,有些学校安排的培训可能只有一个月都能学会(还包括数据库之类的)
    holdeer
        74
    holdeer  
       1 天前
    java 已经算是中间复杂的了,感觉这几年 python 复杂度都超过 java 了
    dif
        75
    dif  
       1 天前   ❤️ 1
    1.5 时代的 java 猿,也写点 python ts go ,java 不过是罗嗦点,在有代码辅助工具的情况下,这些了啰嗦也可无视了。java 后需要借鉴了很多好用的特性(主要是向 scala )。目前只用到 java17 。哪怕是那些抱着 1.6 的老玩具,也可非常低成本的切换到 java17,你要说新特性是语法糖,我倒不觉得。

    好像新兴语言只要火起来,必要拿 java 鞭尸一顿。PS:即使升级到 java11 ,我还见过 List<String> s = new ArrayList<String>()。而且几乎大家都在用 idea,右边这个就算你手写上去也会有特殊颜色提示你可以不写,但有极少数人还这么写- -。当然,并不会报错。
    kdd0063
        76
    kdd0063  
       1 天前
    来自 1.5 版本选手的锐评
    sunrain
        77
    sunrain  
       1 天前
    希望 kotlin 可以一统天下
    xiaomushen
        78
    xiaomushen  
       1 天前
    @ychost 代码量以前是个问题,现在 AI 生成一些,倒也没觉得啥了。
    Go 的好处是,无论高手还是初哥,写出来的东西都很朴素,都能方便接手的人读懂
    Gilfoyle26
        79
    Gilfoyle26  
       1 天前
    java 不行不是 java 的问题,要多从自己身上找找原因
    Torpedo
        80
    Torpedo  
       1 天前
    @kandaakihito #13 ts 有啥语法糖?
    Qds
        81
    Qds  
       1 天前
    语法糖这块,微软家的 C# 还是更胜一筹
    kandaakihito
        82
    kandaakihito  
       1 天前
    @Torpedo 我的母语是 jvav ,凡是 jvav 中没有的东西都算语法糖(暴论
    BestPix
        83
    BestPix  
       1 天前
    我觉得你嫌弃的其实是人。
    wogogoing
        84
    wogogoing  
    PRO
       1 天前 via iPhone
    关键是 Java 本来就是甲骨文的呀(哈哈
    realpg
        85
    realpg  
    PRO
       1 天前
    单纯你吐槽这些东西 我这么黑 java 都不太觉得

    我讨厌 java 就两点:
    1. 过度抽象 无必要抽象 对外也这么给接口
    2. 面向注解编程 逻辑都在注解里
    LittleFox
        86
    LittleFox  
       1 天前
    @yongdaimi 大项目感觉还是要统一一下语法糖吧,不然参差不齐的语法糖看着确实难受
    lca261224
        87
    lca261224  
       16 小时 13 分钟前
    @migu 主要是相比原生 java 相比,代码量普遍会比较少,并且也更容易理解,借助文档和 AI 不都是学习的必须的步骤
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   879 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 90ms · UTC 19:49 · PVG 03:49 · LAX 11:49 · JFK 14:49
    ♥ Do have faith in what you're doing.