V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Suger828
V2EX  ›  程序员

为什么很多人喷 Java 开发者离了 spring 框架就不会写代码了

  •  
  •   Suger828 · 1 天前 · 4301 次点击

    其他语言使用不也使用框架,而且封装的更方便, 还有很多语言的标准库就直接有类似 spring 的功能了

    57 条回复    2025-03-16 22:15:19 +08:00
    xuanbg
        1
    xuanbg  
       1 天前
    如果是用 Java 开发 WEB 应用的话,不用 Spring 也要用个别的,完全自己写的话,怕是要 3 天的工作量直接飙升到 3 个月以上了。
    superchijinpeng
        2
    superchijinpeng  
       1 天前
    哪里喷的
    yuzii
        3
    yuzii  
       1 天前
    我没喷
    Suger828
        4
    Suger828  
    OP
       1 天前
    @superchijinpeng ![img]( )
    Suger828
        5
    Suger828  
    OP
       1 天前
    @xuanbg 但是其他语言也不用自己写啊这些,也都是框架
    crysislinux
        6
    crysislinux  
       1 天前 via Android
    可能是注解这玩意儿比较抽象吧,不过其实跟调函数也差不多,都是闷着眼干。
    renmu
        7
    renmu  
       1 天前 via Android
    @Suger828 人说的不是写脚本吗?别的语言写脚本确实不会用这种框架
    Perry
        8
    Perry  
       1 天前 via iPhone   ❤️ 6
    不用吵,已经进化到了没有 AI 不会写代码的地步
    cwek
        9
    cwek  
       1 天前
    有些功能不庞大的,用上 Springboot 的话,就变成高射炮打蚊子了。

    至于为什么是 Spring ,应该说有什么东西能完全替代 Spring ,做到对象管理、web 接口平面对接等功能?
    Suger828
        10
    Suger828  
    OP
       1 天前
    @cwek 感觉是语言的缺陷, py 自带的装饰器就能替代 spring 框架的一些功能
    jackOff
        11
    jackOff  
       1 天前
    java 目前开发问题就是太啰哩啰唆了,你想写个简单的项目都得搭一堆 spring 脚手架,写单体微服务这玩意简直是一种心智负担,更不用说安卓开发用 java 了,无论写啥安卓项目,最经典的 demo 都得浪费很多时间配那些傻逼 gardle 配置,看看隔壁 flutter 写起来就是简洁,基本不需要考虑太多乱七八糟的配置
    ysy950803
        12
    ysy950803  
       1 天前
    @jackOff Android 的新手村 demo 其实还好,现在 Studio 里面新建项目,直接就能跑,比服务端项目还是简单多了。
    cwek
        13
    cwek  
       1 天前
    @Suger828 一部分吧。我认为:

    Java 的全对象化和原始值适配不够彻底,对应的原始值包装类自动装拆箱出现得太晚了,同时也存在编译器的能力问题,无法做到原始值在编译层面的包装类对应,导致了泛型不彻底。

    还有提得最多的操作符重载,可能只有数学计算可以变得更直觉外,其他业务基本不一定用上,甚至会导致操作符滥用带来的代码清晰性问题。另外偶然找到一种替代机制——Manifold ( https://github.com/manifold-systems/manifold ),可以实现类似的操作符重载能力,机制是基于类似 lombok 的编译器行为拦截,原理就是同为 JVM 语言的 Kotlin 的操作符重载。

    Java 的问题是过于工程规范化,并且语言特性更新得太保守太慢了。
    cvbnt
        14
    cvbnt  
       1 天前 via Android   ❤️ 2
    那要看开发者面对着到底是什么需求,简单的 api 服务器换个框架也能用,但是需求复杂度上去,什么限流鉴权缓存分布式通信大数据搜索引擎一箩筐东西开发效率毫无疑问 springboot 效率最高
    Gilfoyle26
        15
    Gilfoyle26  
       1 天前
    你从哪里得出这个结论的。很多 Java 开发又不是只会一种编程语言。干什么活什么语言,灵活选择,单一语言的很少好吧。
    meiyiliya
        16
    meiyiliya  
       1 天前
    因为 Java 中确实有不少都是面向 Spring 编程,我遇到不少写习惯了 Spring 那一套后甚至都不会建立普通 Java 项目,忘了上次有个什么事情,同事让我帮忙看下,我说建个非 web 项目然后把这个导入进去跑一下看看,结果反过来问我应该怎么做,但是不妨碍 Spring 确实玩的溜。
    hefish
        17
    hefish  
       1 天前   ❤️ 5
    说的 go 离了框架能写啥似的。。
    说的 python 离了 django,flask 能写啥似的。。
    说的 php 离了框架能写啥似的。。
    说的 perl 离了框架能写啥似的。。。对了 perl 好像不怎么用在 web 上。。
    说的 js 离了框架能写啥的,离了 jquery 都未必能写几行。。
    duron600
        18
    duron600  
       1 天前
    相当多程序员干的就是依葫芦画瓢的活
    sagaxu
        19
    sagaxu  
       1 天前
    Java 第二大框架,quarkus/vert.x ,好多人都没听过吧,在 techpower 的 benchmark 看到这两货的时候都以为是 benchmark 专用的非常小众的玩意儿。实际上也有好多公司好多项目在用,这也不是野生项目,是 redhat 推动的。
    jeesk
        20
    jeesk  
       1 天前 via Android
    为什么很多人喷 开发者离了 ai 就不会写代码,那没有 ai 之前呢
    huage
        21
    huage  
       1 天前
    我觉得世间万物的组合或者分散都是自然选择的结果,既然全球的开发者都选择 Spring 来开发 Java ,那么这两者一定是最佳的组合,至少目前是。

    就好比人类两条腿+两只手,为什么不是三条或者三只,那一定是两条+两只才是最佳的组合。
    raptor
        22
    raptor  
       1 天前   ❤️ 1
    @hefish PHP 没有框架还真能写很多东西……所以 PHP 是最好的语言
    jeesk
        23
    jeesk  
       1 天前 via Android   ❤️ 1
    惨,果然是用的人多,挑毛病的就多。

    就拿 firefox 来说, 用的人少, 几乎没人挑毛病。


    否则就有人跳出来说, 没有 chrome 无法上网。
    Donahue
        24
    Donahue  
       1 天前
    @hefish python 还有深度学习,爬虫,等好多东西可以做
    nectar33
        25
    nectar33  
       1 天前
    java 什么情况不是很了解. 但哪怕是 go 也都是在用框架写 http, go 的 net/http 基础库本质也是个 http 框架.
    cloverzrg2
        26
    cloverzrg2  
       1 天前
    spring boot 打印个 hello world ,估计都有 300M 的内存占用
    Lucups
        27
    Lucups  
       1 天前
    我觉得他们想喷的其实是各种日均 PV 不到 100 个的放几张领导照片的官网还用 spring 。

    正如楼上所说“spring boot 打印个 hello world ,估计都有 300M 的内存占用”,很多时候,spring 是被滥用的,太多的内存被浪费了,而 Java 程序员熟悉的 web 框架,可能只有 spring 了,这就导致各种业务简单的小系统也上了 spring ,所以很多人才会喷“ Java 开发者离了 spring 框架就不会写代码了”。

    17 楼说了一堆其他语言,有一说一,你说的其他语言可能没啥问题,唯独 PHP 我不认同,PHP 本身就是模板语言,天生就是写网站的,写点小东西自带的函数库完全够用,完全不需要框架......
    xuanbg
        28
    xuanbg  
       23 小时 22 分钟前
    @Lucups 大家其实说归说,做的时候还是很诚实的。只要我写代码简单方便就行,哪管你引入的库有多大。谁家还没个几百 G 的硬盘?又不是做嵌入式,至于计较这个?现成的库不用自己写?疯了吗???
    2bad4u
        29
    2bad4u  
       20 小时 1 分钟前
    好好上学 --> 选个好就业的专业 --> 考上 C9 好大学 --> 毕业校招进去, 混日子
    FlorentinoAriza
        30
    FlorentinoAriza  
       19 小时 41 分钟前
    事物发展就是提供便利的啊,物理学发现描述压强之前压强的概念也很抽象,时至今日也没人追求抛弃物理学描述一下压强吧
    qiumaoyuan
        31
    qiumaoyuan  
       19 小时 41 分钟前
    因为大多数人写代码就是需要个条条框框,他们写的代码能不出乱子就是因为在框架内。而实际上,即使有了框架,代码一旦超出了框架能够照顾到的业务范围,就又乱写一通了。

    他们写代码,如果没有一种固定的模式让他遵循,心里就开始慌。总是倾向于去找到一种固定的模式,然后无论写什么全都照着模式去写。“你别老记口诀,最重要是打到人”他们是理解不了的。

    所以这种人你让他脱离框架去写代码,他连代码都不知道怎么组织。
    qiumaoyuan
        32
    qiumaoyuan  
       19 小时 39 分钟前
    1. 这种现象不仅仅限于 Java 开发者,相当多数程序员都这样,包括那些嘲笑 Java 开发者的人自己;
    2. 这是描述事实,不是所谓的“喷”。
    angryfish
        33
    angryfish  
       19 小时 39 分钟前
    哪个语言不用框架可以很方便的呢?你举个例子我瞧瞧。
    brookegas
        34
    brookegas  
       19 小时 15 分钟前
    因为 spring 『框架』很好地掩盖了 javaer 本质上是搬砖工的事实。
    EndlessMemory
        35
    EndlessMemory  
       18 小时 29 分钟前
    管他离不离框架呢,能做出用的东西就行,按这个逻辑,那人没了双腿是不是还没发走路了
    hefish
        36
    hefish  
       18 小时 24 分钟前
    说得好像 Python 离了库能写啥似的。
    perl 离了库,写 cgi 也写不出来啊。。。表单变量都提取不出来。。。
    zed1018
        37
    zed1018  
       18 小时 13 分钟前
    我可以理解说不喜欢 springboot 全包,喜欢自定义好一些的框架。但是我理解不了为了踩 java 去抬前端那个堪比 black hole 的 node_modules ,真就啥都一片包。先不说会不会烂尾,就是供应链攻击都太容易发生了。
    kinkin666
        38
    kinkin666  
       17 小时 53 分钟前 via iPhone
    主要是 spring 更工程化,更容易搬砖搬过来就用上去,这是优点好伐
    不然光用 socket 也能从头撸个服务,更别说原生 java web ( servlet )+ jdbc 本身就已经比很多 web 框架好用了
    zizon
        39
    zizon  
       17 小时 49 分钟前
    你试试喷离开 yaml 就不会用 k8s 了...
    holdeer
        40
    holdeer  
       17 小时 12 分钟前
    我承认是这样的
    toesbieya
        41
    toesbieya  
       17 小时 10 分钟前
    @zed1018 哪里看到前端踩 java 了?
    sunqb
        42
    sunqb  
       16 小时 37 分钟前 via Android
    那为什么要离开 spring 框架呢?
    gzldc
        43
    gzldc  
       16 小时 33 分钟前
    python 离开三方库也啥也干不了
    zjsxwc
        44
    zjsxwc  
       16 小时 26 分钟前 via Android
    java 的依赖注入容器只有 spring 的容器是事实标准的依赖注入容器,使用和提供的对象上的容器注解上都是 spring 容器类,于是当然是和病毒一样到处传染了整个生态。

    你问我脱离 spring ,也就是要我脱离 spring 容器,没了容器帮我自动处理,我怎么写代码啊。
    cwcc
        45
    cwcc  
       16 小时 17 分钟前
    用 Spring 不是问题,只会用 Spring 才是问题。放到任何一个语言都是一样。
    yooomu
        46
    yooomu  
       16 小时 9 分钟前
    问就是鄙视链。用的人多,框架也完善,那小众优越感一下就没了
    HangoX
        47
    HangoX  
       15 小时 9 分钟前
    别人喷别人的,我用我真香
    unclevv
        48
    unclevv  
       14 小时 23 分钟前
    写 java 的人为什么要离开 spring 框架呢,喷子离开了嘴还能喷吗,这就跟长寿的人不就是活得久吗,有钱人不就是钱多吗,富二代不就是有个好爹吗,一个道理,喷就是羡慕嫉妒恨而已!
    Leon6868
        49
    Leon6868  
       14 小时 11 分钟前
    @hefish #17 JS 离开框架写 UI 是基本功呢
    zhang77555
        50
    zhang77555  
       14 小时 6 分钟前
    程序员的日子还是太好过了, 内部还能有鄙视链的空间, 老板们还是得再多了解了解 ai, 然后再砍一些岗位让这些牛马再多内卷一点
    Vegetable
        51
    Vegetable  
       13 小时 55 分钟前   ❤️ 1
    这有什么不承认的?大把的开发让他写个脚本定时运行,他会选择 springboot 的定时功能而不是写一个 jar 文件配合 crontab 。

    写个数据导出脚本也用 springboot , 写个发送邮件的脚本也用 sprintboot , 写个命令行工具还要用 springboot 。我曾亲眼见过将一个 py 的数据导出脚本翻译成 java 用了一整天的人,本来定时执行的脚本硬是给做成了一个守护进程。
    chiatouchenai
        52
    chiatouchenai  
       13 小时 15 分钟前 via Android
    @Suger828 服务端不应该尽量抢资源吗,C++那边的 Seastar 也是这样的啊
    chiatouchenai
        53
    chiatouchenai  
       13 小时 6 分钟前 via Android
    @xuanbg 问题在这种需求用现成的 Web Server 比他去写 Springboot 合适多了,就应该用合适的工具作合适的事情
    DefoliationM
        54
    DefoliationM  
       13 小时 5 分钟前   ❤️ 1
    @hefish 我写 go 确实不用框架, 因为标准库的都够用了。。。
    SeaTac
        55
    SeaTac  
       12 小时 52 分钟前
    因为语言啦框架啦是这些人唯一拿得出手的东西了
    其实就是菜 吵架也只能吵点低级趣味
    jqtmviyu
        56
    jqtmviyu  
       9 小时 5 分钟前
    @hefish #17 额, 就以前 jq 时代能写的, 现在不用框架, 不照样写么

    https://youmightnotneedjquery.com/
    kratosmy
        57
    kratosmy  
       7 小时 22 分钟前
    我用 micronaut 写也行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   864 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:37 · PVG 05:37 · LAX 14:37 · JFK 17:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.