新来的同事写的代码,两年半工作经验,一个 CURD 功能写了一星期,今天看了 git commit ,我不做评论,各位看官看吧

102
guopongex19891 2021 年 12 月 30 日
acfun
|
103
OMGZui 2021 年 12 月 30 日
|
104
sakura1 2021 年 12 月 30 日
语法最大的问题应该是没有考虑异常逻辑和空指针的情况吧。如果是异常逻辑的话,看来下层的接口没有异常声明,那就也没问题。空指针的话,确实有点离谱了,虽然一个函数的返回值可能是 null 从接口 api 看不出来,但是 jdk 的类库 Map 的 get 会返回 null 这点常识的应该知道。如果这个接口只处理用于前端或客户端拼接出来的请求,应该都是带 id 的。。
其实仔细看之后感觉还是 map 作为参数的问题比较大,map 作为参数,里面有哪些具体参数从代码上不能自解释,但是文档里又啥也没写,用这个接口的人只能微信之类的上问。 说到口口相传,确实** |
105
johnsona 2021 年 12 月 30 日 via iPhone
就 map 传参了怎么样
|
107
JamesMackerel 2021 年 12 月 30 日
有时候写参数表,我喜欢在最后面留一个 Map<String, Object> extraInfo ……免得到时候改起来不够“敏捷”。
|
108
tankren 2021 年 12 月 30 日
直接让他主动离职吧 不然等试用期判他不合格他跟你闹腾
|
110
TelltoLies 2021 年 12 月 30 日
太多可以吐槽的了,,,日志没有 、注释不规范、object 超类也有很大的问题、、这个 map 取值比较 真的一言难尽。。正常 java 程序员都不会写出这种代码
|
111
cxl008 2021 年 12 月 30 日
map.get 可能返回空 调用 equals 会报异常。。。。。
|
112
xianyv 2021 年 12 月 30 日
拖出去直接祭天了吧
|
113
yogapants 2021 年 12 月 30 日
贵公司还找人吗?我觉得我写的比他好一点呢,这种功能应该写不了一个礼拜
|
114
la2la 2021 年 12 月 30 日
挺好的,前期都把活干好了,我们不都失业了么。狗头.jpg
|
115
bl 2021 年 12 月 30 日
这种代码看到就想吐槽
|
116
hidemyself 2021 年 12 月 30 日
我就想问工资多少,要是比我高,我不能接受的
|
118
456789 2021 年 12 月 30 日
传 map 打死
|
119
leexy 2021 年 12 月 30 日
看着跟我们公司那群 java 开发写的差不多啊
|
120
florianX 2021 年 12 月 30 日
开发规范这种东西,我比较菜 基本没碰到过硬性要求,代码统一,能跑就行
|
121
notwaste 2021 年 12 月 30 日
自称两年半的话基本可以断定是培训出来的了
|
122
jswh 2021 年 12 月 30 日
用 map 的话可能是 PHP 转过来的,就是这个 获取 post update ,我实在不知道怎么辩解。
|
123
binaryxia 2021 年 12 月 30 日
槽点太多,无从下手
|
124
unco020511 2021 年 12 月 30 日
每次看到什么 map 传参或者作为 result,还有解析用什么 jsonObject 的都好头疼,后面维护的人不得骂爹娘了
|
125
sunchunyang 2021 年 12 月 30 日
测试人员提意见了没有?
|
126
mkdir 2021 年 12 月 30 日
就想知道开多少工资
|
127
yogapants 2021 年 12 月 30 日
@unco020511 我们部门有个老哥工作 10 多年了,有次来我们组帮忙不知道是报复还是怎么回事直接 map 返回的时候 key 是中文,后面我去迁移改造不动前端,真的是一边改一边骂娘。大家都说他技术好,可能大佬真的不屑于这些细枝末节吧
|
128
msg7086 2021 年 12 月 30 日
我们组上个月刚开掉一个代码写得比你贴的好很多的人,开除原因是能力不行。
|
129
hahaba 2021 年 12 月 30 日
别跟我扯什么实体类啊 vo 啊 bo 啊,老夫写代码从来都是 map 一把梭,不怕产品改需求
|
130
unco020511 2021 年 12 月 30 日
@yogapants 真大佬往往都有代码洁癖
|
131
zhoiiiii 2021 年 12 月 30 日
看着确实头大,一眼看下去就有三四个地方可能出现异常
|
132
emhhb2ppy 2021 年 12 月 30 日
字体挺好看的
|
133
darkengine 2021 年 12 月 30 日
先别说 Java 语言的问题了,用 post 请求获取数据,API 名字叫 update 。。。。。。
|
134
ww940521 2021 年 12 月 30 日
没办法 我们公司后端要的也是 map ,我也只能传 Map 也没文档参数总是对照不上。
|
135
alihanniba 2021 年 12 月 30 日
啥问题
|
136
Marszm 2021 年 12 月 30 日 太灵活了。。。。万能啊。。我悟了大师。。。去 TMD 面向对象,要对象干什么,我 Map 就是自由精神的极致体现。
你们前端随便怎么传,我以不变应万变。 |
137
murmur 2021 年 12 月 30 日
@darkengine 这个其实真不是坑,post 没有 url 的限制,body 想怎么放怎么放,天然还不缓存,企业内部开发用这个太爽了
|
138
hhjswf 2021 年 12 月 30 日 via Android
map 看情况...我们有个很蛋疼的原因,哪怕就一个参数 id 也要用 body ,然后就...不可能建实体吧,那就 json map 咯..
|
140
ozipin 2021 年 12 月 30 日 post 请求我可以接受,update 命名的方法我可以理解为复制粘贴忘记改过来了,但是这个入参和方法内容真的一行一个坑。map 接收参数,从 map 中获取的对象直接使用 equals ,有统一的返回结构直接返回 null ,从 map 中获取对象直接类型强转,获取数据不做处理。好奇工资多少
|
141
pengtdyd 2021 年 12 月 30 日
大家别吵了~~~~~~,给我人皇一个面子,我说句公道话:又不是不能跑,改它干啥,万一,我是说万一改崩了呢
|
142
boringcc 2021 年 12 月 30 日
不会依葫芦画瓢吗。。。。
|
143
LiMingze 2021 年 12 月 30 日
看着代码 我已经开始生气了[○・`Д´・ ○]
|
145
bluekz 2021 年 12 月 30 日
大家都在说 map 传参数,为啥我槽点不一样。
看注释这是“获取单条数据”方法,看方法名,这是 update ? 就怕旁人看明白我代码系列。 |
146
HolmLoh 2021 年 12 月 30 日 |
147
keeley 2021 年 12 月 30 日
第一大问题是 是 update 命名吧,实际做的是 get 吧。
语义习惯都破坏了。 |
148
abc0123xyz 2021 年 12 月 30 日
挺好的,你们格局小了,这样可以一个人带动两个兄弟就业
|
149
c6h6benzene 2021 年 12 月 30 日
PostMapping ,这是获取数据还是更新数据…
|
150
bigxianyu 2021 年 12 月 30 日 via Android
想不到大家对这一段代码这么热情,这 code review 看来能搞起来了。。。
|
151
WilliamYang 2021 年 12 月 30 日
你可以考虑下,反正我绝对不跟这种做同事
|
152
Latin 2021 年 12 月 30 日
当面吐槽 (不行)
来 V 站嘲评 (可以) |
153
leeyom 2021 年 12 月 30 日 via iPhone
1.入参 map 一时爽,重构火葬场
2.if equal 左侧如果出现 null ,直接异常 3.直接 return null ,没有用 ApiResult 包装 4.直接从 map 取出后强转,有可能异常 |
154
chengyunbo 2021 年 12 月 30 日
@AlkTTT java map 不能传参了?
|
155
shayuvpn0001 2021 年 12 月 30 日 @HolmLoh 甭不住了,神特么 Pro ,笑死~
|
156
wellsc 2021 年 12 月 30 日
亲手维护过更加恶心的代码,一点都笑不出来
|
158
yurong333333 2021 年 12 月 30 日
人人框架的 controller 层的 page 查询也用 map 入参。。。不知道大佬们怎么看
|
159
bestwaytowait 2021 年 12 月 30 日
map 是有可以理解的方向的啊,主要命名和 map get 之后可能的 exception 吧
|
160
donggexiongdi 2021 年 12 月 30 日
挺好啊
、 还想怎么 样 |
161
HunterPan 2021 年 12 月 30 日 via iPhone
还是太年轻,再垃圾的代码也见过,指导下再看看有进度没有
|
162
Arainc 2021 年 12 月 30 日
我刚把截图发给我老婆看了下,我老婆说这个写的正常,哈哈哈哈哈哈哈
|
163
Bijiabo 2021 年 12 月 30 日
被同事磨练的我看了之后只想说一句:这算啥,小意思 T_T
|
164
xtinput 2021 年 12 月 30 日
post application/json 接口传给后台不就是一个字典吗?
post application/x-www-form-urlencoded 提交那就要一个参数一个参数定义了 对于 Java 我也不懂,我是客户端开发的 |
165
xtinput 2021 年 12 月 30 日
遇到最恶心的接口是 list 和直接 string 传参,iOS 的主流网络请求框架都是字典传参,如果出现数组和直接丢 string 的只能用原生直接设置 body
|
166
redford42 2021 年 12 月 30 日
他很厉害,他考零分
|
167
yzbythesea 2021 年 12 月 31 日
map 传参,即使 map 传参,value 也不能直接用 object
异常处理,直接抛 null ,不处理 NPE 命名这些跟上面比都是小问题了 |
168
pydiff 2021 年 12 月 31 日 via iPhone
个人感觉这种可以直接炒了,留着后患无穷,鬼知道他能给你留多少坑
|
169
xuanbg 2021 年 12 月 31 日
处处都是槽点,看得我都懵逼了,以致我无从吐起。。。
|
170
shellic 2021 年 12 月 31 日
以前写弱类型语言的吧
|
171
banmuyutian 2021 年 12 月 31 日
@einq7 #157
槽点在于 handler 声明为 Spring Bean ,调用的时候却手动 new 一个出来 |
172
AlanDSF 2021 年 12 月 31 日
最大的草点难道不是写这么烂还写了一星期吗。。。
|
173
rapperx2 2021 年 12 月 31 日 楼上那些别动不动就提培训班出来的,你读大学出来的,你牛掰,你把你写的代码拿出来看看嘛?
|
174
niub 2021 年 12 月 31 日
Code Review 的时候可以提醒一下(如果你们有),在这里吐槽解决不了什么问题。
|
175
Renco 2021 年 12 月 31 日
看楼里有说 获取用 GET 方法。不知道各位公司的前端同事 接不接受用 GET + RequestBody 的请求模式 。虽然理论上这种请求后可以实现功能,但前端都觉得这个写法很傻逼。有些查询条件过多,用 RequestParam 又不太合适。
|
176
Renco 2021 年 12 月 31 日
现在公司架构 一把梭, 全部用 POST 无论 增删改查统一 POST
|
177
aino 2021 年 12 月 31 日
这算个吊,我组长十年工作经验,代码写的还不如刚毕业的,查询数据库直接 for 循环,命名也是一塌糊涂,规范也是一塌糊涂,业务业务不懂,技术技术糟糕。。。。
|
178
learninining 2021 年 12 月 31 日
写挺好,下次别写了
|
179
AlkTTT 2021 年 12 月 31 日
@chengyunbo 能啊,个人项目想怎么用怎么用;
多人协同项目里用就好比在公交车上抽烟,有法律规定吗?没有;但合适吗?不合适 |
180
ganning 2021 年 12 月 31 日
突然感觉几年工作经验也不是那么重要,人靠谱最重要
|
181
ultimate 2021 年 12 月 31 日
|
183
weizhen199 2021 年 12 月 31 日
map 并不是什么槽点,就算 java, .Net 强约束实体也不是一开始就流行的
|
184
fatbear 2021 年 12 月 31 日
@Renco 前端应该不太能接受,前端的库比如 vue 常用的 axios 或者是 angular 的 http client 在 get 里放 body 确实是比较麻烦,后端调别人的接口就能接受这种写法,绝大多数后端语言在这方面都不存在障碍
|
186
orzwalker111 2021 年 12 月 31 日
歪个楼,API 注释大家一般会维护更新吗?我这边也没有个统一的规定,swagger 、yapi 、wiki 接口文档各种使用吧。至于注释 param 、return 这些很少维护了
|
187
rick2c 2021 年 12 月 31 日
我不李姐,但我大为震惊
|
188
1KTN90lKW9gVJ9vX 2021 年 12 月 31 日 via Android
又不是不能用,,,
|
189
lybcyd 2021 年 12 月 31 日
@MrWhite 不是黑,动态语言使用 map 或者类似 map 的结构来解析请求是主流做法,判断是否相等也不会有 NPE 问题。现在大多数语言进行判断都是 null safe 的,也就 Java 还必须调用 Objects.equals 这种方法。
PHP 比如 Laravel ,这个地方直接写 $request->id === '1' 是没有任何问题的。 |
190
aliveyang 2021 年 12 月 31 日
其他的看不惯还能用,但是这个 return null 确实没法用了
|
191
littlebrother 2021 年 12 月 31 日
又不是不能用🐶
|
192
litchinn 2021 年 12 月 31 日
我都感觉是故意的呀,这么点代码每行都有槽点可太行了
|
193
Leviathann 2021 年 12 月 31 日
有的人就是没有类型的意识,让他写 java 就到处都是 object 的 map ,让他写 ts 就到处都是 any
|
194
chiuan 2021 年 12 月 31 日
我完全看不懂。。。。。
|
195
xylophone21 2021 年 12 月 31 日
看到很多人说异常,异常了全局捕获然后返回规范的 ApiResult 不行吗?
|
196
dengji85 2021 年 12 月 31 日
就是 if 判断有点瑕疵,我本人就是这样的,我是直接拿 string 再解析有些字段多写 dto 太麻烦了
|