V 友们,绷不住了,分享下我们学校暑假请的培训机构老师写的珍贵代码,这就是占用我 20 天老师的代码水平,

2021-07-23 16:20:36 +08:00
 34531535
V 友们,绷不住了,分享下我们学校暑假请的培训机构老师写的珍贵代码,这就是占用我 20 天老师的代码水平,
https://gitee.com/organizations/hainingtong/projects
,有兴趣的看一下,重点在这个 core 模块.
5952 次点击
所在节点    程序员
54 条回复
mirone
2021-07-24 15:48:27 +08:00
不是,问题是他要是水平足够进哪怕腾讯,他也不会去培训班当老师啊。
Senorsen
2021-07-24 16:04:48 +08:00
粗略看了后端部分,大体上是“能跑,有些地方写的不太好,不符合最佳实践”的感觉,可能本身写这个项目的人水平也一般,强行拼凑出来的项目。

如果楼主的水平很高,能轻松重写一个新的、碾压这个项目的话,发出这样的感慨也很正常。如果有闲功夫的话,可以考虑花点时间,整理这个项目的缺点部分,写个博客,或把这个项目重构成自己心中理想的样子。

如果楼主本身也还在学习阶段,那么还是建议勿眼高手低。结合网上的文档,尝试理解整个项目的思路,取其精华去其糟粕,学习它有用的部分。

顺便给你个小建议,非要用英文标点的话,逗号或句号后加个空格。
meteor957
2021-07-24 16:16:44 +08:00
你是想让 v 友一起喷他吗
Keyi
2021-07-24 18:07:49 +08:00
try-catch 增加鲁棒性的前提是异常被正确的处理,否则会阻碍问题的尽早暴露,像 https://gitee.com/hainingtong/hainingtong/blob/master/mini-app/src/main/java/com/hainingtong/miniapp/controller/BusController.java#L100 纯属没有处理异常吧......
34531535
2021-07-24 18:21:41 +08:00
@Senorsen 非常感谢您, 每条建议都很有帮助, 确实不能眼高手低, 主要我对对学校强制培训 20 天感到很气, 听去的同学说讲的也很水, 就是稍微讲讲, 发链接自学,
krapnik
2021-07-24 18:24:59 +08:00
打开项目看了一下这个老师的名字,有点眼熟,搜了一下,原来是一个技术群的群友,有段时间发言比较积极所以有点印象,这是公开处刑吗。。。。。。
34531535
2021-07-24 18:34:23 +08:00
@krapnik 我靠, 兄弟别说出去啊, 我还想过呢.
Anonywp
2021-07-24 22:39:34 +08:00
遇事不决,try/catch 解决,业务代码是这样的,还有随处可见的 null 判断。我之前的后端好像封装了一个 basecontroller,直接 return 就行了,有异常会抛出并返回一个服务端异常的 response,但我不知道具体怎么做的
msg7086
2021-07-25 04:36:15 +08:00
我跟着组里学了一年的 Java 以后的感想是,

做项目用的 Java 就不要谈什么美观了,写来写去都像屎山……
你可以把 Java 写得很优雅,但是,我没看到有人这么写的。
做项目就是要快要鲁棒,谁管你优雅……

我们这,年薪 15 万的,和年薪 20 万的,和年薪 30 万的,写的代码真都像屎山。
当然我写的也是屎山。
到最后,项目能跑起来,公司能挣到钱,你能拿到工资,这些才是真的。
GiantHard
2021-07-25 10:59:22 +08:00
@Keyi 是的,这样的异常处理还不如不写,还有 104 行的 System.out.printfn,感觉再怎么样应该也要通过 logger 输出吧。。
wdlth
2021-07-25 18:37:26 +08:00
Charset charset = Charset.forName("UTF-8");
下次谁再教写这个的请直接拖走
EscYezi
2021-07-26 02:49:41 +08:00
UserService#register 捕获重复 key 异常,然后再根据异常信息来判断哪个字段重复?这个虽然能跑,但是也太怪了,先按用户名查询一下不就行了吗……
Akiya
2021-07-26 12:24:27 +08:00
觉得 Java 写 try catch 多余的,写 go 不得气死去
p786317875
2021-07-28 16:34:18 +08:00
@34531535 其实注释写的挺清楚了,这是 Map 后面要改成 redis,你从 redis 进行 get 就会有一些奇奇怪怪的异常比如网络之类的,你开发的时候遇不到,生产环境下使劲抛这种异常受不了,再高级点的做法就是异常自己定义,抛出来的异常也要处理好,比如 redis 挂了、网络异常等等,要返回给用户提示,而不是直接返回一个空的数据让用户感到迷惑。

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

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

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

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

© 2021 V2EX