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

Javaer 用了一下 Go web 开发,感觉开发体验倒退了

  •  
  •   binbinyouliiii · 2022-01-21 14:10:48 +08:00 · 17535 次点击
    这是一个创建于 495 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前一直用的 java 写 crud ,最近有项目要用 Go 写,然后我就用了 Go 尝试写了一个 web 程序

    但是体验下来,其实开发体验并不怎么高,比如脚手架,虽然有很多现成的,但是我更希望有一种规范或者 interface ,就算是 java 多年前的纯 spring+servlet ,也会提供各种 interface 去规范。这样起码可以保证接手或者同时维护的人能够更快的理解和上手。

    开发体验类似写命令行程序,从 main 函数一点点往上加功能,写了一天,看了一天文档,我才把 gin+gorm+zap+viper 配置好,花时间去组合。

    crud 方面就不说了,还是比较原始,或者有什么奇淫巧计我不知道的。

    上面说的几点只是我简单用了几天,感知比较大的几点。

    其实上面说的同样可以放在其他语言上,我也不是对 Go 有什么偏见,而是觉得 GO 这么火,越来越多的互联网公司用来支撑业务,照理来说生态和体验跟其他小众语言不是一个量级的了,但是用起来还是有些失望。

    第 1 条附言  ·  2022-01-21 17:56:16 +08:00
    麻烦想说我贬低 go 的人先看看标题和内容,别一看到 java 和 go 就跳脚
    204 条回复    2022-11-30 14:06:18 +08:00
    1  2  3  
    lscho
        1
    lscho  
       2022-01-21 14:14:12 +08:00   ❤️ 11
    “虽然有很多现成的,但是我更希望有一种规范或者 interface”

    感觉是写 java 写多的后遗症。
    Hanggi
        2
    Hanggi  
       2022-01-21 14:17:02 +08:00   ❤️ 2
    这就是典型的告诉你该怎么做就怎么做,突然放开手脚就不知所措了。

    你依然可以使用 Java 的那套开发模式去写 Go ,就是要理解下 Go interface 的一些特别之处。
    murmur
        3
    murmur  
       2022-01-21 14:19:43 +08:00
    这不是 interface 的问题,是 spring 的生态太庞大了,java 的 web 东西稍微凑一下都能凑近 spring 里
    Qseven
        4
    Qseven  
       2022-01-21 14:20:31 +08:00   ❤️ 25
    面向过程,流水账,一把梭,十个工程十个样,是不是这感觉?
    binbinyouliiii
        5
    binbinyouliiii  
    OP
       2022-01-21 14:21:26 +08:00   ❤️ 1
    @lscho @Hanggi
    这个其实也可以算每个人不同的喜好了,我写过其他项目(前端,kotlin ,Rust )的时候,接手项目的时候,找 Bug 其实就得从头开始看了,非常耗费时间,因为每个人的想法都不一样,随着维护的人越来越多,项目就会杂糅每个人的思想,最后大概率还是会很难维护。
    keepeye
        6
    keepeye  
       2022-01-21 14:24:35 +08:00
    继续回去用 java 框架就是了,也不指望你接触几天就能改变思维习惯
    lscho
        7
    lscho  
       2022-01-21 14:26:03 +08:00
    @binbinyouliiii 感觉不是不同喜好的问题,是只有 java 有这种大一统的框架,学 java 的人都会这个,所以换个人可以快速接受。别的语言没有这种大一统的框架,用什么的都有,所以看上去比较乱。

    其实好不好维护看是看文档的,如果 golang 项目写的比较规范,同时文档齐全,换个人也可以很快理解上手。
    Mark3K
        8
    Mark3K  
       2022-01-21 14:26:35 +08:00
    那是因为你项目太小了,仅包括一些 CRUD ,打点的项目中 CRUD 和 HTTP 接口只是其中很小一块
    Mark3K
        9
    Mark3K  
       2022-01-21 14:27:35 +08:00   ❤️ 1
    echo1937
        10
    echo1937  
       2022-01-21 14:29:11 +08:00
    @lscho #6 别的语言照样有啊,Python Django ,Ruby on Rails ,PHP Laravel
    liuxu
        11
    liuxu  
       2022-01-21 14:30:36 +08:00
    你写过 rust ,但是你觉得 go web 开发体验倒退了? rust 什么项目发出来我看看
    anzu
        12
    anzu  
       2022-01-21 14:32:35 +08:00
    可能其它公司关注的不是开发体验
    binbinyouliiii
        13
    binbinyouliiii  
    OP
       2022-01-21 14:32:37 +08:00   ❤️ 2
    @liuxu #11 见我最后一句话,现在人戾气这么重?
    chevalier
        14
    chevalier  
       2022-01-21 14:37:28 +08:00   ❤️ 16
    Javaer ? ❌
    Springer ✅
    binbinyouliiii
        15
    binbinyouliiii  
    OP
       2022-01-21 14:39:19 +08:00
    @Mark3K #8 emm...我觉得业务逻辑用什么语言写都差不多,不知道你说的大项目指什么
    wonderfulcxm
        16
    wonderfulcxm  
       2022-01-21 14:40:46 +08:00 via iPhone
    正常,当你对一种新语言了解不够,本能的用熟悉的语言去套。很多人夸口一周甚至更短时间掌握一门语言,事实上掌握的只是语法。思维还没转过来,只会写出像 Java 一样的 go 代码,像 js 一样的 PHP 代码。
    要多久才能掌握一门语言,有个我订阅的 YouTuber 说,至少用这门语言做五个不同项目。而且不是 hello world 级别的。
    NoDocCat
        17
    NoDocCat  
       2022-01-21 14:43:09 +08:00   ❤️ 2
    请尝试说服自己: 大道至简.
    如果你没有说服, 说明你不是目标用户
    ytmsdy
        18
    ytmsdy  
       2022-01-21 14:43:38 +08:00   ❤️ 3
    java 最大的优势是规范,就算写的人水平再参差不齐,写出来的代码,不会太飘逸。大企业,大团队用这玩意儿确实有优势。毕竟顺利完成项目,并且项目可维护才是最重要的。
    Go ,Python 这一类动态语言,就很考验写代码人的水平,以及写代码人的自律规范。代码飘逸起来,各种花式语法,后续维护,以及优化是一个很大的问题。但是重点是快,小团队,个人开发者用这玩意儿挺好。毕竟对个人开发者来说,效率是第一的!
    monkeyWie
        19
    monkeyWie  
       2022-01-21 14:45:30 +08:00   ❤️ 6
    go 写业务代码就是难受,楼上一堆解释原因的真的是不是没写过复杂业务,但凡用过 java springboot 都知道 go 写业务多恶心吧,我自己也用 go 但是只写网络相关的东西,这才是 go 的方向
    binbinyouliiii
        20
    binbinyouliiii  
    OP
       2022-01-21 14:46:13 +08:00   ❤️ 1
    @wonderfulcxm #16 其实我初上手一个新语言 web 项目,我更想知道最佳实践是什么,因为这个项目不光是我一个人维护,现在看起来很多 Go web 不同项目都有自己不同的风格。
    mosfet
        21
    mosfet  
       2022-01-21 14:52:16 +08:00
    搞嵌入式 C 的
    现在尝试一些跑 linux 上的服务用 go 写,毫无违和感...
    jelipo
        22
    jelipo  
       2022-01-21 14:59:34 +08:00 via Android
    @mosfet 楼主说的是 web
    xgfan
        23
    xgfan  
       2022-01-21 15:08:03 +08:00   ❤️ 3
    Golang 写业务 /CRUD 就是不行。

    1 ,没有泛型就没有好的集合类。
    2 ,再加上很多函数都要 return err ,导致很难把一串操作给连起来。
    wanguorui123
        24
    wanguorui123  
       2022-01-21 15:13:59 +08:00
    自己造个 Go 的轮子就好了
    ren2881971
        25
    ren2881971  
       2022-01-21 15:21:41 +08:00   ❤️ 1
    Go 的隐式实现、隐式继承真的是对初学者一点不友好。。。 写 java 出身的,想完全看懂一个 go 的开源项目真的好难。。。。
    huiyifyj
        26
    huiyifyj  
       2022-01-21 15:26:42 +08:00
    javaer 吐槽 go 月经贴
    Jooooooooo
        27
    Jooooooooo  
       2022-01-21 15:27:56 +08:00   ❤️ 4
    我感觉 java 上 web 开发已经真正做到只用关心业务逻辑, 框架层面极少关心.


    (这才是真正好用的语言啊
    iyear
        28
    iyear  
       2022-01-21 15:53:36 +08:00 via Android   ❤️ 1
    我很喜欢 go ,但是 go 写业务是真的麻烦,这点真的得承认,我自己写的很烦。
    但是写中间件和各种网络工具,分发是真的爽
    swim2sun
        29
    swim2sun  
       2022-01-21 16:02:05 +08:00
    其实你是习惯了 Spring 帮你抽象好的那些概念,controller, service, repository...
    于是当你需要自己去抽象一些东西的时候你才会这么无所适从,go 应该也有一些框架帮你抽象好了很多东西,但你需要投入时间去理解
    sagaxu
        30
    sagaxu  
       2022-01-21 16:04:09 +08:00 via Android   ❤️ 1
    大道至简,写的不舒服,一定是需求提的不好,不够优雅
    zhangchongjie
        31
    zhangchongjie  
       2022-01-21 16:07:52 +08:00
    @Jooooooooo java web 方面的生态基本上都是现成的了,现在的集成框架基本业务 都不怎么写了
    binbinyouliiii
        32
    binbinyouliiii  
    OP
       2022-01-21 16:13:37 +08:00   ❤️ 2
    @swim2sun #29 这些分层不是 spring 的概念,是 web 的概念,只是在 java web 上大家都遵循这个分层
    liuxu
        33
    liuxu  
       2022-01-21 16:14:08 +08:00
    @binbinyouliiii 现在的人发帖都这么带有偏见?喜欢带节奏?
    binbinyouliiii
        34
    binbinyouliiii  
    OP
       2022-01-21 16:17:32 +08:00   ❤️ 4
    @liuxu #33 我只是作为 javer ,实际用 Go 的感觉,到你这就是带节奏?难道不是你见不得别说 Go 一丁点不好?
    theodoreshuai
        35
    theodoreshuai  
       2022-01-21 16:18:29 +08:00   ❤️ 6
    为什么我感觉评论区战火纷飞


    ┬┴┬┌─ ●─┬─  │─┼─┐ ●├─┤○
    ┴┬┴├┬ ┌─┼─ │◎ │ │ ○└┬┘●
    ─┼─││ │ │  ││─┴─┴ ──┼──
    ●│○││ ┴─┼─  │○  ● / │ \
    binbinyouliiii
        36
    binbinyouliiii  
    OP
       2022-01-21 16:25:33 +08:00
    @theodoreshuai #35 大家都会对自己最熟悉的语言下意识的维护,我也写过其他语言,我能理解现在的流行语言都有自己的流行场景,而且我说的都没有跟语言特性相关的,都是 web 生态和开发体验。

    目前 Go 的场景明显是跟 Java 有很大重合的,既然场景有重合那我对比也没有问题。
    SenLief
        37
    SenLief  
       2022-01-21 16:25:51 +08:00   ❤️ 1
    其实你换个思想,如果 java 不让你用 spring ,而是让你自己实现,你还会不会觉得 java 更容易?
    go 目前就是万花筒,没有什么是统一的,所以实现上也是千奇百怪,哎。
    offswitch
        38
    offswitch  
       2022-01-21 16:26:21 +08:00   ❤️ 3
    Go 反正我不觉得开发效率高,tmd 一堆 if err := ; err != nil ,就很反人类了
    binbinyouliiii
        39
    binbinyouliiii  
    OP
       2022-01-21 16:30:23 +08:00
    @SenLief #37 你说的我知道,所以我说其他小众语言也一样,我是以 Go 目前火热程度和生态丰富性做前提,来比较的。
    binbinyouliiii
        40
    binbinyouliiii  
    OP
       2022-01-21 16:31:55 +08:00
    @offswitch #38 我觉得 Rust 的“?”的设计可以放在这上面,但是好像大家并不感冒?
    leafre
        41
    leafre  
       2022-01-21 16:35:30 +08:00   ❤️ 26
    楼主说的很客观,结果下面一堆 GOer 戾气
    SenLief
        42
    SenLief  
       2022-01-21 16:35:44 +08:00   ❤️ 1
    @binbinyouliiii 是啊,写的如果没有标注好的文档,看都看不懂。这点还不如 python 。至少 django 还能一把梭。
    gouflv
        43
    gouflv  
       2022-01-21 16:43:09 +08:00 via iPhone   ❤️ 1
    当年拿 express 硬写 crud 的时候,也是这种情况
    sampeng
        44
    sampeng  
       2022-01-21 16:44:04 +08:00
    rust 的?的设计在层次深了之后也蛮讨厌。。。每格错误类都要做类型转换
    ragnaroks
        45
    ragnaroks  
       2022-01-21 16:44:30 +08:00
    spring 比较完善导致了你的错觉,这个其实就类比于有人只会写 "VUE" 不会 javascript
    fenglangjuxu
        46
    fenglangjuxu  
       2022-01-21 16:45:09 +08:00
    虽然 我不懂 java 但是你说的对 golang 有点像积木 被人搭建出各种各样的 模型
    ClarkAbe
        47
    ClarkAbe  
       2022-01-21 16:47:43 +08:00
    讲道理一般写 golang 除了某些要多种未知类型输入和返回的场景会用 interface.......crud 谁用了 interface 而不是 struct 定义和约束的话内心骂死他........而且并不是一定得在 main 函数上加.....init()了解一下
    binbinyouliiii
        48
    binbinyouliiii  
    OP
       2022-01-21 16:49:00 +08:00
    @sampeng #44 "目前一般认为对于应用程序推荐使用 anyhow ,而对于库推荐使用 thiserror",Rust 一般用这两个
    wizzer
        49
    wizzer  
       2022-01-21 16:52:08 +08:00
    https://budwk.com 值得一试~
    cmdOptionKana
        50
    cmdOptionKana  
       2022-01-21 16:56:37 +08:00
    如果已经熟悉了 Java ,再转过来用 Go ,那自然各种不顺。

    但是,如果完全零基础的两个人,学 Go 上手应该会比学 Java 轻松一点。
    binbinyouliiii
        51
    binbinyouliiii  
    OP
       2022-01-21 16:57:34 +08:00   ❤️ 5
    @ragnaroks #45 我觉得 Spring 的出现是必然的,没有 Spring 也会有叫 Summer 的框架,很多人嫌 Java 穷设计贼多,我觉得人只要一多,必须要有限制和设计来规范,我开始也是嫌烦,但是代码写多了,就能理解为什么会出现这么多设计,Spring 只是其中一种,Java WEB 目前的路都是前人一步步走出来的,我觉得没有任何问题。

    说到正题,早些年刚学 Java WEB 的时候,其实人均手操 servlet ,不比现在的 Go 简单多少。
    sampeng
        52
    sampeng  
       2022-01-21 17:00:09 +08:00
    @binbinyouliiii 没错。是解决了转换的问题。但在代码的语意上发生了太多变化。其实这个设计本身倒没什么问题。我理解这样设计的原因是 rust 要求在于,请设计好自己的 Error 层次。其实看一些优秀开源代码,是都是自己设计好 Error 。。。
    sampeng
        53
    sampeng  
       2022-01-21 17:01:04 +08:00   ❤️ 1
    我其实个人更倾向于 rust 要比 golang 更适合 web 开发。工程性要比 golang 强。1 年前写的 rust 。现在再去看是看得懂的。golang ? what the fuck ,这个逻辑是干啥,那个逻辑头和尾在哪。。。
    sampeng
        54
    sampeng  
       2022-01-21 17:02:50 +08:00
    @binbinyouliiii 说到正题。。现在的 jave 开发不如说是 spring 开发。。。这是一个很矛盾的事。我倒觉得无所谓,业务要用什么就用什么。反正自己每有决定用什么语言的权利
    potatowish
        55
    potatowish  
       2022-01-21 17:05:13 +08:00 via iPhone
    已经是 java 的形状了
    liuxu
        56
    liuxu  
       2022-01-21 17:08:01 +08:00
    @binbinyouliiii 你拿 spring 对比 gin ,gin 的设计理念就是保证轻量原始,让 go web 框架更 golang ,而不是像别的语言,然后你得出 go web 体验倒退了

    我建议你手写 servlet jsp 和 gin 对比,再得出 java 和 golang 哪个更适合 web 开发
    liuxu
        57
    liuxu  
       2022-01-21 17:10:44 +08:00   ❤️ 1
    而且你这个标题“Javaer 用了一下 Go web 开发,感觉开发体验倒退了”,就是带 java 和 golang 的节奏,非常明确
    binbinyouliiii
        58
    binbinyouliiii  
    OP
       2022-01-21 17:15:23 +08:00   ❤️ 1
    @liuxu #57 哦?那您认为怎么起标题能够表达出我的意思且不算带节奏呢?
    QAO
        59
    QAO  
       2022-01-21 17:21:38 +08:00
    你自己都说“就算是 java 多年前的纯 spring+servlet ,也会提供各种 interface 去规范”了,哪种语言都可以有或者没有“规范”,只是你适应了 java 那套而已

    楼上说了很多 java 和 go 的对比,我基本都认同,特别是开发业务代码的效率,但都不是你这种情况呀

    承认是因为自己没法短时间从旧思维跳出来就这么难吗?
    binbinyouliiii
        60
    binbinyouliiii  
    OP
       2022-01-21 17:24:20 +08:00   ❤️ 1
    @liuxu #56 那你可以告诉我可以媲美 Java web 生态的 Go web 组件嘛?我本身就要用,你要是反驳我,建议拿出可以提升我所谓的“开发体验”的产品出来。
    binbinyouliiii
        61
    binbinyouliiii  
    OP
       2022-01-21 17:27:19 +08:00
    @QAO #59 我早些年是从 Java 裸 Servlet+JDBC 过来的,你有没有想过我为什么要说“体验倒退”吗?
    liuxu
        62
    liuxu  
       2022-01-21 17:29:27 +08:00
    @binbinyouliiii 我只教儿子,你真的想让我教你么
    x940727
        63
    x940727  
       2022-01-21 17:29:53 +08:00   ❤️ 1
    为什么那么多人就是不能承认 Go 写 Web 、写业务就是不如 Java 呢?从脚手架完善程度,生态,可参考项目,到后期项目的维护性,代码的可读性,哪个方面 Go 能比得上 Java ?
    liuxu
        64
    liuxu  
       2022-01-21 17:31:05 +08:00
    媲美 Java web 本身就是个伪命题,非要用 java 思维写 golang
    binbinyouliiii
        65
    binbinyouliiii  
    OP
       2022-01-21 17:31:34 +08:00   ❤️ 24
    @liuxu #62 素质极差
    Marmot
        66
    Marmot  
       2022-01-21 17:31:42 +08:00
    当你手里拿着一个锤子的时候,看谁都像钉子。
    svt
        67
    svt  
       2022-01-21 17:32:40 +08:00
    干!干!干!干就完了
    x940727
        68
    x940727  
       2022-01-21 17:32:52 +08:00   ❤️ 10
    @binbinyouliiii 和那种低水平低素质的人没必要讨论,讨论技术问题都要认爹,可想他当儿子当的有多憋屈。
    banmuyutian
        69
    banmuyutian  
       2022-01-21 17:34:46 +08:00   ❤️ 1
    "Less is more."Goland 是 more 在哪呢,真心求教
    XiLingHost
        70
    XiLingHost  
       2022-01-21 17:37:43 +08:00
    建议根据需求选语言,而不是一个语言到处用,不同的语言肯定有不同的优势,不然何必搞出这么多不同的语言呢
    binbinyouliiii
        71
    binbinyouliiii  
    OP
       2022-01-21 17:38:42 +08:00
    @XiLingHost #70 《领导的爱好》
    liuxu
        72
    liuxu  
       2022-01-21 17:39:52 +08:00
    @x940727 除了生态是和代码贡献人数有关,其他的维护性可读性都和软件工程设计问题,和语言一点关系都没有,就算是 ffmpeg 、linux kernel 这种项目,只要设计好了阅读起来一点问题都没有,不会真的有人觉得多了点 err :=就不可读了吧

    “孩子看什么都不顺眼,多半是要打了”
    Immortal
        73
    Immortal  
       2022-01-21 17:44:42 +08:00
    lz 可以看下 kratos 和 go-zero 这些框架,可能更符合你之前的习惯
    cloud107202
        74
    cloud107202  
       2022-01-21 17:45:50 +08:00   ❤️ 12
    看多了各种语言爱好者的争论,唯独 go 语言的偏执狂热粉比例很异常。随便一个涉及到 go 的讨论帖都有扑面而来的 go 里 go 气

    难道是 go 的某个语法特质或社区的某种气质会聚集这样的人?
    linzhipeng
        75
    linzhipeng  
       2022-01-21 17:46:07 +08:00
    不知道我有没有理解对,就是新接触一个技术,希望有一份最佳实践能摆出来,就可以按照这份最佳实践去开发,然后进一步去学习这份最佳实践涉及到的东西,而不是在入门后,从网上搜一大堆解决方案,最后自己总结出一个最佳实践。
    x940727
        76
    x940727  
       2022-01-21 17:46:22 +08:00   ❤️ 3
    其实什么语言,发展到大型项目,其实在规范上都大差不差。Go 语言的 kubernetes 自己去看看,和 Java 的大型项目有啥区别(比如 Hadoop ,Flink 之流)?
    LoNeFong
        77
    LoNeFong  
       2022-01-21 17:47:41 +08:00
    @x940727 月经贴, 习惯就好, 每个月都有人要来引战一下
    x940727
        78
    x940727  
       2022-01-21 17:49:10 +08:00   ❤️ 2
    @liuxu 当然有关系,泛型,继承,重载,重写都是可以提高维护性和可读性的东西,但是相反的也对开发人员有了更高的要求,你语法缺失这些东西,就等于在某些场景下去需要做更多的代码判断,自然而然的会提高阅读难度。这很难理解吗?
    ychost
        79
    ychost  
       2022-01-21 17:49:31 +08:00   ❤️ 1
    个人比较喜欢 js KOA 那一套约定,用起来很灵活且扩展性极强
    nash
        80
    nash  
       2022-01-21 17:50:40 +08:00
    为什么一定要对比语言呢,每种语言都有它自己的生态发展规律,有自己的市场需求场景,就像古代侠客,喜欢用什么武器就用什么武器,不能因为你有刀谱(sprint)有宝刀(java)就去否认剑(golang),还是提高自身的内功比较重要,不然不管是刀还是剑终究都是一块铁
    x940727
        81
    x940727  
       2022-01-21 17:52:59 +08:00   ❤️ 2
    @nash 楼主并不是否认 Go 存在的意义,而是说在 Web 开发过程中有很多地方不如 Java 方便,如果有 Gopher 知道有什么脚手架能堪比 Spring ,大可以提出来让楼主去用就完了。
    binbinyouliiii
        82
    binbinyouliiii  
    OP
       2022-01-21 17:55:10 +08:00
    @nash #80 我没有提过 Go 的语言不行,我标题特指了 web ,也说明了现在 Go 的火热和生态丰富
    HiShan
        83
    HiShan  
       2022-01-21 17:57:19 +08:00   ❤️ 1
    Java 的 Spring 确实 完爆目前所有的 Web 框架。Go 里面也有仿的 Spring ,项目是:[Go-Spring]( https://github.com/go-spring/go-spring)
    nash
        84
    nash  
       2022-01-21 18:13:19 +08:00   ❤️ 1
    @binbinyouliiii 很多公司并不是拿 go 直接去写 web ,而是做一些中间件,go 目前的生态是不行,java 写 web 的生态已经无敌了,对比也没意义的,既然市场有需求还是有它的价值和闪光点的,生态的完善也不是一朝一夕的,spring 生态也是多少开发者 20 几年建设出来的,如果看好 go 就去参与它生态的建设,如果不喜欢继续深入 java ,个人取舍了,个人意见,不喜勿喷
    fregie
        85
    fregie  
       2022-01-21 18:13:23 +08:00
    本身就不是面向对象的语言,非拿来 CURD ,体验肯定好不到哪去
    dqzcwxb
        86
    dqzcwxb  
       2022-01-21 18:14:27 +08:00
    @cloud107202 加入我 go 教当一个忠心教徒吧
    liprais
        87
    liprais  
       2022-01-21 18:14:41 +08:00   ❤️ 2
    golang 都十来年还生态不行,就是不愿意承认不好用呗
    iyear
        88
    iyear  
       2022-01-21 18:14:52 +08:00
    go 写业务很麻烦,但是你这喷的不在点上,gin 和 spring 也不是一个体量的框架呃。。该喷的是 go 没有 spring 这样大一统的框架,生态还是不行
    nash
        89
    nash  
       2022-01-21 18:16:44 +08:00
    @x940727 什么语言什么框架能堪比 spring?
    binbinyouliiii
        90
    binbinyouliiii  
    OP
       2022-01-21 18:17:52 +08:00
    @nash #84 虽然但是,一般主 go 公司不可能只写中间件啊,字节和 B 站的 crud 肯定大部分也是 go 写的
    nash
        91
    nash  
       2022-01-21 18:19:20 +08:00
    @binbinyouliiii 那你就想想为什么他们不用 java 呢,既然 go 那么难用?
    binbinyouliiii
        92
    binbinyouliiii  
    OP
       2022-01-21 18:21:38 +08:00
    @nash #91 这还用问为什么?因为技术 leader 的选型喜好啊。

    我什么时候说 Go 难用了?
    nash
        93
    nash  
       2022-01-21 18:23:01 +08:00
    @binbinyouliiii 是体验不好,再说又要开战了
    si1enceneo
        94
    si1enceneo  
       2022-01-21 18:24:16 +08:00   ❤️ 1
    楼主对比的本来就是业务,CRUD ,这方面 go 确实没 java 好用 ,为啥不愿意承认呢
    x940727
        95
    x940727  
       2022-01-21 18:24:42 +08:00
    @nash Python 的 Django 勉勉强强可以在基本功能上比一下,如果论扩展性和支持生态的话,那 Spring 真的是独孤求败了,那是几万顶级 Java 程序员十几二十年的贡献。
    www5070504
        96
    www5070504  
       2022-01-21 18:25:07 +08:00
    不明白为啥这么多 web 要用 go 感觉 go 的主场不是在其他方向么 比如网络 中间件 之类的
    nash
        97
    nash  
       2022-01-21 18:27:01 +08:00
    @si1enceneo 如果 CRUD ,别说对比 spring 了,对比 laravel 还差一大截呢
    binbinyouliiii
        98
    binbinyouliiii  
    OP
       2022-01-21 18:28:55 +08:00
    @nash #93 我同样可以找出不选 java 选 pyhton 的,“为什么他们选 python 不选 java 呢”
    liian2019
        99
    liian2019  
       2022-01-21 18:32:56 +08:00
    每种语言都有擅长的方向
    liuxu
        100
    liuxu  
       2022-01-21 18:41:07 +08:00   ❤️ 1
    @nash
    @HiShan

    如果只讲 web 框架的话,laravel 可以一战

    spring 对比 laravel ,一种手摇拖拉机对比特斯拉的感觉,即使你 springboot 来了也不行
    1  2  3  
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1462 人在线   最高记录 5634   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 79ms · UTC 17:02 · PVG 01:02 · LAX 10:02 · JFK 13:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.