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

哇,你们程序员怎么能偷懒,以后不准用 Lombok!

  •  
  •   Navee ·
    navee · 2020-09-01 14:18:29 +08:00 · 3932 次点击
    这是一个创建于 1574 天前的主题,其中的信息可能已经有所发展或是发生改变。
    RT
    现在正在移除中
    29 条回复    2020-09-02 18:04:07 +08:00
    Jooooooooo
        1
    Jooooooooo  
       2020-09-01 14:19:26 +08:00
    我们团队讨论过就决定不用它

    主要是看不到它能带来什么好处或者收益
    nnnToTnnn
        2
    nnnToTnnn  
       2020-09-01 14:21:33 +08:00
    @Jooooooooo 函数式编程,收益很高的,特别是在操作数据这一块,比如数据分组,数据排序,数据筛选,一个数据格式转换到另外一个格式,相当方便。
    surfire91
        3
    surfire91  
       2020-09-01 14:23:45 +08:00
    具体什么理由?
    heyjei
        4
    heyjei  
       2020-09-01 14:26:15 +08:00   ❤️ 1
    这个不是说 Lombok 好和不好,只要团队里统一意见,要么都用,要么都不用,就可以了。

    没必要为这个东西争论。
    bxb100
        5
    bxb100  
       2020-09-01 14:28:06 +08:00   ❤️ 2
    @nnnToTnnn #2 那是 lambda 吧
    xiaomingVTEX
        6
    xiaomingVTEX  
       2020-09-01 14:28:14 +08:00
    不喜欢
    cheng6563
        7
    cheng6563  
       2020-09-01 14:28:23 +08:00
    Java 这个 Getter Setter 真是一言难尽。
    bxb100
        8
    bxb100  
       2020-09-01 14:29:14 +08:00
    IDEA 可能之后会原生支持 lombok , so 看情况吧, 话说能省几个 setter/getter 页面也挺清爽的
    jjianwen68
        9
    jjianwen68  
       2020-09-01 14:29:18 +08:00
    至于吗,我都是加上 lombok 的
    lsastaaa
        10
    lsastaaa  
       2020-09-01 14:29:39 +08:00
    确实,开始就约定好,要么都用,要么都不用
    hdbzsgm
        11
    hdbzsgm  
       2020-09-01 14:31:08 +08:00
    超喜欢 lombok 的
    Navee
        12
    Navee  
    OP
       2020-09-01 14:31:35 +08:00
    @surfire91 不确定性太强
    heyjei
        13
    heyjei  
       2020-09-01 14:34:26 +08:00
    @surfire91 有时候编译器的 hot reload 可能会出现莫名其妙的问题,要重启应用才行。
    YzSama
        14
    YzSama  
       2020-09-01 14:35:46 +08:00
    如果是都 get/set 模板,使用 lombok 生成不挺好的?

    即使不用 lombok 也是会使用 idea 自带的生成 get/set 吧。
    nnnToTnnn
        15
    nnnToTnnn  
       2020-09-01 14:36:46 +08:00
    @bxb100 卧槽,我看错了 (*/ω\*) 。lombok 感觉一般般,可用可不用 =。=
    superHydra
        16
    superHydra  
       2020-09-01 14:37:20 +08:00
    可用可不用,有时候并不能用到那么多特性,显得冗余
    onikage
        17
    onikage  
       2020-09-01 14:40:49 +08:00
    这货不是不好, 而是做了不应该做的事, 这些功能如果由 jdk 层级的来做更合适, 上一个项目中引入的 lombok 已经全部清除干净了, 另外这货绝不只做 getter&setter.
    Navee
        18
    Navee  
    OP
       2020-09-01 14:41:21 +08:00
    @superHydra 刚改完了,99.99%用的都是 @Data 注解
    retanoj
        19
    retanoj  
       2020-09-01 14:48:35 +08:00
    idea 为了 lombok 做了 2012.2.1 更新吧
    lqs
        20
    lqs  
       2020-09-01 14:49:48 +08:00
    更应该要干的事情是直接把 POJO 类的成员变量直接声明成 public 的,不要再受到古代教科书上说的「用 getter/setter 会更面向对象」这种过时思想的影响。
    oneisall8955
        21
    oneisall8955  
       2020-09-01 14:51:14 +08:00 via Android
    只用他的 setter/getter,我看有些人喜欢直接怼 data...
    surfire91
        22
    surfire91  
       2020-09-01 15:05:23 +08:00
    @Navee 不确定太强是指?
    现在用不用 lombok 争议还是有,统一没问题,问题是改变现状总得有个理由
    Navee
        23
    Navee  
    OP
       2020-09-01 16:11:27 +08:00
    @surfire91 就是用法过于简单粗暴( 99.99%都是一个 @data ),即使现在不出问题,也不能保证将来不出问题
    keybrade285
        24
    keybrade285  
       2020-09-01 16:50:24 +08:00
    @nnnToTnnn 你先区分一下 lombok 和 lambda
    shuqin2333
        25
    shuqin2333  
       2020-09-01 17:00:14 +08:00
    遇到一个问题,如果属性名第一个字母是小写,例如 cData,生成的 Getter 和 Setter 方法是 getCData,setCData 。这样反射会有问题,找不到 CData 属性
    surfire91
        26
    surfire91  
       2020-09-01 17:39:54 +08:00
    懂了
    Macolor21
        27
    Macolor21  
       2020-09-01 21:26:36 +08:00
    @SLF4 注解好用,@Data 确实生成太多了
    69partner
        28
    69partner  
       2020-09-02 07:31:56 +08:00
    就我 lombok
    @Data
    @EqualsAndHashCode(callSuper = false)
    @Accessors(chain = true)
    @Slf4j
    @AllArgsConstructor
    @NoArgsConstructor
    生成都用?
    element90
        29
    element90  
       2020-09-02 18:04:07 +08:00
    有没有人可以告诉我,lombok 做错了什么?用它有什么坏处吗???
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1129 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 23:12 · PVG 07:12 · LAX 15:12 · JFK 18:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.