|  |      1asLw0P981N0M0TCC      2021-07-23 16:23:44 +08:00 那你倒是说下是什么水平 | 
|      2statumer      2021-07-23 16:24:24 +08:00 via Android 槽点是?要 V 友们自己找? | 
|  |      3v2zhao      2021-07-23 16:24:46 +08:00 Iterator var5 = realms.iterator(); 很强 | 
|  |      4learningman      2021-07-23 16:29:21 +08:00 | 
|  |      5shilianmlxg      2021-07-23 16:30:05 +08:00 有前端有后端, 这就是全栈嘛 | 
|  |      6liubaicai      2021-07-23 16:30:47 +08:00 能把你培训到觉得老师写的很烂的水平不正说明他很成功嘛? 当然,如果你一开始就会,那何必跟他学 20 天浪费自己时间。 | 
|  |      7chendy      2021-07-23 16:31:22 +08:00 水平其实不好说,市面上写不明白 crud 的开发其实很多很多 除非能加入好公司的好项目,否则的话…… | 
|  |      834531535 OP | 
|  |      9silk      2021-07-23 16:34:20 +08:00  3 这就是 人菜瘾大? 我看前端写的还可以啊 能用 | 
|  |      1034531535 OP 特别喜欢 try catch,特别特别. 我没听过他课,只不过要交大作业在开始 clone 下他的代码 | 
|  |      1134531535 OP controller 当 service 用,返回数据格式不会用泛型,非用 object,用的时候真的很丑 | 
|  |      13xrr2016      2021-07-23 16:40:01 +08:00 放图啊... | 
|  |      14Vegetable      2021-07-23 16:42:32 +08:00 中规中矩吧 主流业务代码就这样,后端是 spring,没什么犯傻的空间,不过风格不太统一,应该有不少 cv 的。 前端就是典型的 vue 面条代码,没啥可吐槽的。 | 
|  |      15puzzle9      2021-07-23 16:42:58 +08:00 开始的开始 都是复制粘贴 如果后续发现改起来很麻烦的话 可能就相同代码不会出现了 | 
|  |      16JYii      2021-07-23 16:44:01 +08:00 随便翻了一下,我觉得还可以,我上学那会暑假培训有教这些我得好好感谢学校... | 
|      17Hurriance      2021-07-23 16:54:20 +08:00 为啥不直接用 ConcurrentHashMap | 
|  |      18kop1989      2021-07-23 16:59:08 +08:00  3 搞大自报虚空批判一个人,完全没有任何意义。 建议 lz 可以晒出你认为的改进代码,以供大家学习与交流。 "Talk is cheap. Show me the code." --Linus Torvalds | 
|      202kCS5c0b0ITXE5k2      2021-07-23 17:02:24 +08:00 @34531535 喜欢用 try catch 没啥问题把. | 
|  |      21x86      2021-07-23 17:02:59 +08:00  3 结果老师在某社区发帖:带了 20 天学生碰到个特别装的,受不了... | 
|  |      23yukiww233      2021-07-23 17:13:20 +08:00 比较正常的业务代码啊...水准 /经验应该比大部分的大学授课老师好了...值得用那么夸张的语气来吐槽? | 
|  |      24IvanLi127      2021-07-23 17:14:18 +08:00 还行吧,这代码。 培训机构的老师好不好就不提了,你都不听他的课.....主要是这老师是靠讲课挣钱的,又不是靠写代码挣钱,所以目测代码水平在培训老师里,可能不算差。。。 | 
|  |      25efaun      2021-07-23 17:16:00 +08:00 能挣钱就行,行业就是这个水平 | 
|      26p786317875      2021-07-23 17:19:10 +08:00 @34531535 说实话这种教学内容整合了一堆常用框架,作为一个搞了多年后端的,稍微扫了几眼他的后端代码,感觉挺正常的,框架这种其实就是用到的时候去学一下,一般几天就上手能用了,还没参加工作的建议专注业务以及底层和原理,当然,为了找到好工作还得算法熟练。 | 
|      27p786317875      2021-07-23 17:24:11 +08:00 @34531535 这里的 trycatch 已经是入门级的异常处理了,你真参与到大项目遇到 bug 就知道 trycatch 有多重要了,人越多的项目异常处理代码越重要。 | 
|  |      2834531535 OP @p786317875 谢谢,学习了. 我有个问题想请教下,8 楼图中的 get 方法代码他为啥也用 trycatch? | 
|      29sherlockwhite      2021-07-23 19:54:02 +08:00 在学校多学习,不要目空一切,把自己放低点 | 
|  |      30xuanbg      2021-07-24 09:27:42 +08:00 @34531535 controller 当 service 用,返回数据格式不会用泛型,非用 object,用的时候真的很丑 restapi 返回值 object 没毛病啊,反正都序列化了,范型又有什么意义呢? | 
|      31v2orz      2021-07-24 09:46:44 +08:00 业务型代码太过洁癖会搞得自己很累,成效不明显 自己研究学习时怎么优雅怎么来 | 
|      32simonlu9      2021-07-24 10:08:37 +08:00 servie 没做事务控制吧,而且抛异常通过 contain 判断有点笨 | 
|  |      33chocotan      2021-07-24 10:18:24 +08:00 楼主追求很好 简单瞅了一下 java 部分,没看出来有啥问题。我个人是觉得部分 javadoc 注释和双斜杠的注释没任何用处,并且部分变量的命名太随意了,不好看。但老板不管代码漂不漂亮,程序能跑起来就行。 | 
|  |      34qiumaoyuan      2021-07-24 11:00:56 +08:00 “占用我 20 天的老师的代码水平。” | 
|  |      35antidoom      2021-07-24 12:37:28 +08:00 via Android 你等你老师来回你。 | 
|  |      36plk403      2021-07-24 13:00:07 +08:00 哟,海宁人啊,我桐乡滴 | 
|  |      37code4you      2021-07-24 13:04:40 +08:00 等 我就是教他的那个老师出现 😁 | 
|  |      38Terry05      2021-07-24 13:24:41 +08:00 会加 try/catch 明明是优点,这就被你认为是缺点了?孩子,你以后开始做项目就知道了 | 
|      39gBurnX      2021-07-24 13:25:31 +08:00 | 
|  |      40Pichai      2021-07-24 15:31:36 +08:00 师傅引进门,修行靠个人! | 
|  |      41mirone      2021-07-24 15:48:27 +08:00 不是,问题是他要是水平足够进哪怕腾讯,他也不会去培训班当老师啊。 | 
|      42Senorsen      2021-07-24 16:04:48 +08:00 粗略看了后端部分,大体上是“能跑,有些地方写的不太好,不符合最佳实践”的感觉,可能本身写这个项目的人水平也一般,强行拼凑出来的项目。 如果楼主的水平很高,能轻松重写一个新的、碾压这个项目的话,发出这样的感慨也很正常。如果有闲功夫的话,可以考虑花点时间,整理这个项目的缺点部分,写个博客,或把这个项目重构成自己心中理想的样子。 如果楼主本身也还在学习阶段,那么还是建议勿眼高手低。结合网上的文档,尝试理解整个项目的思路,取其精华去其糟粕,学习它有用的部分。 顺便给你个小建议,非要用英文标点的话,逗号或句号后加个空格。 | 
|      43meteor957      2021-07-24 16:16:44 +08:00 你是想让 v 友一起喷他吗 | 
|      44keifafa      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 纯属没有处理异常吧...... | 
|  |      4534531535 OP @Senorsen 非常感谢您, 每条建议都很有帮助, 确实不能眼高手低, 主要我对对学校强制培训 20 天感到很气, 听去的同学说讲的也很水, 就是稍微讲讲, 发链接自学, | 
|  |      46krapnik      2021-07-24 18:24:59 +08:00 打开项目看了一下这个老师的名字,有点眼熟,搜了一下,原来是一个技术群的群友,有段时间发言比较积极所以有点印象,这是公开处刑吗。。。。。。 | 
|  |      48Anonywp      2021-07-24 22:39:34 +08:00 遇事不决,try/catch 解决,业务代码是这样的,还有随处可见的 null 判断。我之前的后端好像封装了一个 basecontroller,直接 return 就行了,有异常会抛出并返回一个服务端异常的 response,但我不知道具体怎么做的 | 
|  |      49msg7086      2021-07-25 04:36:15 +08:00  1 我跟着组里学了一年的 Java 以后的感想是, 做项目用的 Java 就不要谈什么美观了,写来写去都像屎山…… 你可以把 Java 写得很优雅,但是,我没看到有人这么写的。 做项目就是要快要鲁棒,谁管你优雅…… 我们这,年薪 15 万的,和年薪 20 万的,和年薪 30 万的,写的代码真都像屎山。 当然我写的也是屎山。 到最后,项目能跑起来,公司能挣到钱,你能拿到工资,这些才是真的。 | 
|  |      50GiantHard      2021-07-25 10:59:22 +08:00 @Keyi 是的,这样的异常处理还不如不写,还有 104 行的 System.out.printfn,感觉再怎么样应该也要通过 logger 输出吧。。 | 
|  |      51wdlth      2021-07-25 18:37:26 +08:00 Charset charset = Charset.forName("UTF-8"); 下次谁再教写这个的请直接拖走 | 
|  |      52EscYezi      2021-07-26 02:49:41 +08:00 via iPhone UserService#register 捕获重复 key 异常,然后再根据异常信息来判断哪个字段重复?这个虽然能跑,但是也太怪了,先按用户名查询一下不就行了吗…… | 
|  |      53Akiya      2021-07-26 12:24:27 +08:00 via iPhone 觉得 Java 写 try catch 多余的,写 go 不得气死去 | 
|      54p786317875      2021-07-28 16:34:18 +08:00 @34531535 其实注释写的挺清楚了,这是 Map 后面要改成 redis,你从 redis 进行 get 就会有一些奇奇怪怪的异常比如网络之类的,你开发的时候遇不到,生产环境下使劲抛这种异常受不了,再高级点的做法就是异常自己定义,抛出来的异常也要处理好,比如 redis 挂了、网络异常等等,要返回给用户提示,而不是直接返回一个空的数据让用户感到迷惑。 |