请教一下,大公司(BAT 级别的)对 lombok 有规定吗?

2020-07-30 13:40:01 +08:00
 wdwwtzy

是推荐用还是禁止用啊?

13396 次点击
所在节点    Java
93 条回复
aragakiyuii
2020-07-31 10:39:05 +08:00
这种不都是看 leader 嘛。。反正是要用的话就都得用
Reficul
2020-07-31 10:57:33 +08:00
@movistar

Go 辣鸡是辣鸡,不过比起 Java 那堆还是好点吧。代码生成只要在提交前重新执行一下生成命令就行,也可以在 CI 的时候重新生成一次。
Reficul
2020-07-31 10:59:00 +08:00
@WebKit

不是专业写 Java 的,不好评价代码质量。 主要是接手的遗产项目会有一些这样的代码。
tairan2006
2020-07-31 11:05:09 +08:00
@hxy91819 builder 坑很多啊,用 Accessor 不好么
joyhub2140
2020-07-31 11:10:32 +08:00
公司的项目,我不反对用 Lombok,毕竟对效率有那么一丁点的提升,但是我自己的项目,绝对不用,这是个人选择哈。
luhongfei66
2020-07-31 11:12:14 +08:00
@lpgph 嗯,能真正落地 DDD 的是会影响大些
yamasa
2020-07-31 11:28:41 +08:00
除非是业务上真的很难实现,个人真的很讨厌搞一堆 setter 到处调。又丑又容易把状态搞乱,宁愿多写几个 constructor 或者次之 builder,然后 tm 老老实实的给我 immutable 吧。
Renco
2020-07-31 11:28:59 +08:00
为什么不能无脑用 @Data 有大佬可以解释下么。
CoderGeek
2020-07-31 11:38:11 +08:00
组内统一 用啥就行
guagusi
2020-07-31 12:04:19 +08:00
@luhongfei66 贫血跟充血了解一下,领域模型再了解一下
672795574
2020-07-31 13:16:57 +08:00
@Reficul Java 废眼,可能是被黑的最惨的一次。。
hecz
2020-07-31 17:02:49 +08:00
@Reficul 无非写代码和读代码方式而已,又能有多少效率上的差别呢。还有就是针对语言进行评论我觉得不太友好
yamasa
2020-07-31 17:24:01 +08:00
@Renco @data == @getter@setter. 和 idea 给你 gen 所有变量的 getter setter 没区别。很烂的是无脑上 setter 这种习惯,很多 dto 和 pojo 或者所有 field,或者部分 field 本质就是 immutable 的,根本不需要改也不应该被允许改,还是给搞上 setter,这就是无脑。写个几年程序都应该能理解维护复杂状态的痛,也能理解 fp 为什么在算力不断升级的现在越来越受欢迎。
leeUp
2020-07-31 19:14:40 +08:00
java 土著,java 废眼,这地图炮开的的🙄
122006
2020-07-31 19:24:19 +08:00
其实最好有个插件能把 setget 方法隐藏起来就好了
lxk11153
2020-07-31 19:36:54 +08:00
@wiix #41 "tostring 有父类 tostringbuilder" 是啥?
Reficul
2020-08-01 00:13:15 +08:00
@hecz

同意你说的后半句,攻击语言的评论的确是不友好(除了对楼上那个老哥的攻击我不抱有任何抱歉以外),但是我不同意你说的前半句。

冗余就是不好的,简单比复杂好。2L 的吐槽来自生活,除了原生写 Java/还处在对内存失控恐惧中那些 Cpp 转 Java 的人,接手 Java 项目不被困扰的。退一万步说,可能 Lombok 是有传染的问题,但是这只是说明这个解决问题的方案不够好,不代表这个问题不存在。

另外我对团队要不要用 Lombok 的态度是中立的。因为这是仁者见仁的东西,嗓门大的规则定好了就定好了没啥好说的,我接手的项目就不让用,那就不用呗。 但是,要我定规则,那就是用 Lombok 或者上 Kotlin 。
Reficul
2020-08-01 00:16:06 +08:00
fix typo:

“接手 Java 项目不被困扰的” -> “接手 Java 项目(没有)不被困扰的”
zzl22100048
2020-08-01 01:38:59 +08:00
lombok 用之前还是要有规范的,总会有人把这个依赖放 complie,用 provided 的话不会扩散
lightingtime
2020-08-01 01:47:20 +08:00
用的理由是方便开发,不用的理由是啥?想单独定制的就单独拿出来写就好了啊,类上写好注释还方便维护。

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

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

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

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

© 2021 V2EX