网上看到的段子照进了现实,这种代码出现在我的项目中!

2024-09-04 11:46:59 +08:00
 szpinc1102

给大家观摩一下,给我看傻了

29541 次点击
所在节点    程序员
227 条回复
ConquerZ
2024-09-04 12:58:13 +08:00
你们都能看到图吗
bgm004
2024-09-04 12:58:22 +08:00
还行,我手上一个项目一个 vue 页面 6000 多行,一个 echart 图表依赖 2 个 json ,文件合计 20 几 k😢
woodwhales
2024-09-04 13:01:11 +08:00
这段代码,从语法结构上看是 Java 。可以推测这段代码在导出 excel 文件并设置满足条件的指定列进行隐藏。如果是我重构,我能想到的是去除多重 if else ,用 map 集合先保存每个条件,然后一个循环遍历 map 中是否存在满足条件。伪代码如下:

```java

// 业务逻辑外部定义
static Map<String, Function<ExportColumn>> map = new HashMap<>();

static {
map.put("服务器名称", data -> !data.getAppServer().isServerName());
}


// 业务逻辑内

if(map.containsKey(cell.getStringValue())) {
boolean flag = map.get(cell.getStringValue()).apply(dto.getExportColumn());
sheet.setColumnHidden(index, flag);
}

```
ooxx2123
2024-09-04 13:18:22 +08:00
要我重构的话,也是 23L 的思路,好奇大家有什么其他方式吗?
或者保留原样,我感觉也还好,就是看起来不太简洁。
potatowish
2024-09-04 13:23:01 +08:00
excel 导入导出是初级 java 必备技能,怎么把很容易写成💩的代码写的优雅这就是中级 java 的技能了
ma836323493
2024-09-04 13:43:03 +08:00
用反射, 另外 model 上一般也有注解 ApiModelProtery
yb2313
2024-09-04 13:47:48 +08:00
丑陋的 equal
ice
2024-09-04 13:51:58 +08:00
挺好,我想不到重构的方法,而且也没想到最后生成的 Excel 是个多复杂的玩意
loocao
2024-09-04 13:52:39 +08:00
清晰明了,简单又方便维护
adminii
2024-09-04 13:55:58 +08:00
项目组代码量考核,第一了
awalkingman
2024-09-04 13:56:19 +08:00
@yul36074 第一次加载需要挺长时间
chenyu8674
2024-09-04 13:57:28 +08:00
虽然不优雅,但好处是随便换个开发都能懂

离真正的屎山差远了
jackOff
2024-09-04 13:59:05 +08:00
整个枚举类,初始化时把枚举类灌入一个 map 里面
0xcode
2024-09-04 14:00:08 +08:00
这代码写的很优雅啊,谁上手看一眼都能维护的来。
justfindu
2024-09-04 14:01:13 +08:00
先不要吐槽, 先改一版你觉得好的. 一起放出来
luohaiyang
2024-09-04 14:03:36 +08:00
又不是不能用,狗头
angenin
2024-09-04 14:03:37 +08:00
@adminii 这个方法写完,当天代码行数的任务量直接完成🤣
junwind
2024-09-04 14:03:39 +08:00
这种千万千万不要想着重构,能跑就行。
enihcam
2024-09-04 14:03:44 +08:00
这不是代码问题,这是管理问题。
enihcam
2024-09-04 14:04:38 +08:00
如果老板是“能用就行”的心态,这个团队长不了。

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

https://ex.noerr.eu.org/t/1070137

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

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

© 2021 V2EX