javaer 是不是写啥都是一股 Java 味儿

2025 年 3 月 14 日
 deplives

今天 review 了一个 javaer 写的 Python 代码,真的是要吐了 一个 init 里面写了一百个参数,下面紧跟着一百个 self

纯属被 java 的 get set 洗脑了

10376 次点击
所在节点    程序员
98 条回复
nno
2025 年 3 月 14 日
纯粹就是水平问题,正常的 java 代码也不会一个构造函数塞 100 个参数啊
InkStone
2025 年 3 月 14 日
虽然整体上我赞同标题,但你贴的这个一点都不 Java 。

首先多参构造在 Java 里典型的做法是 Builder 模式,而不是全塞构造函数。其次就算是 Builder ,也没人会写 100 个参数的 Builder……肯定会拆成不同类型分级构造的。

另外你这里完全没有 getter/setter 相关的内容。
Valpha6
2025 年 3 月 14 日
kotliner 表示 "?"
yosoroAida
2025 年 3 月 14 日
100 多个参数。。。。这哥们不能多创建几个类分割下吗。。纯粹水平问题+1
Sezxy
2025 年 3 月 14 日
Javaer 不是一个空的构造方法,new 完后再 set 吗?
谁会弄个 10 个以上的参数的构造方法?
visper
2025 年 3 月 14 日
我觉得 java 味是 getter,setter, 各种 factory...
rockddd
2025 年 3 月 14 日
现在 Java 都是用 lombok 注解,在编译的时候自动生成这些东西, 多少年前就不用手写了。
wuyiccc
2025 年 3 月 14 日
看看你写的
TimPeake
2025 年 3 月 14 日
这一看就是是编程助手 tab 写的啊 你们还真以为是手写的 ? 0912 年了 不太相信有人这么蠢
prosgtsr
2025 年 3 月 14 日
我们 javaer 要么就是 @Builder ,要么就是 new 然后 set 的。。
jworg
2025 年 3 月 14 日
我只知道用 @dataclass 注解,还有什么其他写法吗
RandomJoke
2025 年 3 月 14 日
怎么感觉在黑 java
wu00
2025 年 3 月 14 日
一看就是 tab 写的
midsolo
2025 年 3 月 14 日
这个跟 Java 味无关,纯粹是个人水平问题。

真正的 Java 味是不管要做什么功能,先定义一堆对象,建几十个类再说,然后往里面套一堆设计模式,最后每个类就几十行代码,关键是自己还认为很优雅......
bronyakaka
2025 年 3 月 14 日
java 不都传对象嘛?这和 java 没关系吧
chihiro2014
2025 年 3 月 14 日
真要写这种不会用 lombok ,写个 NoArg 和 AllArg 的注解么?
litchinn
2025 年 3 月 14 日
javaer 写啥都是 java 味儿这个没问题,但是截图这个不是 java 味儿,我体会到的 java 味是各种包装,各种抽象,各种继承
javaer 切换到其他语言确实很难改变这些习惯,因为 java 纯面向对象,虽然后面有了 lambda 表达式,但是用起来和 rust 里的闭包 match 等功能不是一个级别
jiangzm
2025 年 3 月 14 日
@InkStone #2 Builder 模式也是屎一样的代码
sagaxu
2025 年 3 月 14 日
没见过这种 Java 代码,Java 味儿是搞一个 fluent builder

Foo foo = Foo.fooBuilder()
.setA("XXX")
.setB("XXX")
setC(1)
.build()
unco020511
2025 年 3 月 14 日
这种 java 得搞个 builder 或者叫 factory,反正怎么复杂怎么来

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

https://v2ex.xtra.eu.org/t/1118358

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

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

© 2021 V2EX