【晒出你的第83行代码】社区用户@尼古拉斯雷的代码故事,和现在比起来以前的代码都是垃圾!

最近社区有个很火的《向代码致敬,寻找你的第83行》的活动,缘起于前几天,在阿里巴巴的一个小黑屋里,5名对代码有着极致追求的程序员参与了阿里代码领域最高荣誉“多隆奖”最终角逐(多隆作为淘宝的第一代程序员,也是很多技术人心中的大神)。那天代码评审现场,看到某代码片段最后结尾,多隆突然补上一句,往上翻看下第83行。代码一般都是几百行,他看到最后,居然还记得第83行的一个细微瑕疵,这得是对代码怀着怎样的敬畏之心。

于是,在五四青年节之际,社区发起了来晒晒属于你的“第83行”的活动,活动中邀请业界的大牛、大神们来晒代码或者Review代码!本轮我们晒晒社区用户@尼古拉斯雷的代码故事,和以前比起来现在的代码进步太多了。

@尼古拉斯雷 晒出了如下代码:

最初的代码和现在的代码比起来,以前的代码就是垃圾,什么代码规范都是不存在的。

现在虽然写代码还是很垃圾,但是比以前要好很多,起码知道如何去优化这些代码啊!因为就是看了那个阿里巴巴的那个开发手册,然后就知道如何去优化这些代码,如何去规范的定义变量名之类的。还有就是对一些比较消耗性能的一些代码,进行优化。以前的代码就是说看起来感觉就是刚刚开始学写字的感觉,现在的写着代码,起码是有点模样了。

之前的代码片段

ModelAndView view = new ModelAndView("cs/investUser/list");
        if (moblie == null && username == null && idCard == null) {
            return view;
        }
        String msg = "";
        RowBounds bounds = new RowBounds(page, limit);
        List<UserDetail> userDetailList = userDetailInfoService.getUserDetail(moblie, username, idCard, bounds);
        if (CollectionUtils.isEmpty(userDetailList)) {
            msg = "此用户不存在";
        } else {
            UserDetailInfo userDetailInfo = userDetailInfoService.getFullUserDetailInfo(userDetailList.get(0).getUserId() + "");
            view.addObject("userDetailInfo", userDetailInfo);
        }
        return view
                .addObject("moblie", moblie)
                .addObject("username", username)
                .addObject("idCard", idCard)
                .addObject("msg", msg)
                .addObject("userDetailList", userDetailList);

现在的代码片段:

【晒出你的第83行代码】社区用户@尼古拉斯雷的代码故事,和现在比起来以前的代码都是垃圾!

对我来说如何更好地去写好代码,去优化代码是很重要的事。

也一直就想让有着代码洁癖的大牛看一下了!请评论一下这段代码有什么不足之处,有什么改进之处!谢谢!!

对此,围观的大家也给出了自己的代码修改意见:

@浮生递归:username应写成userName

@尼古拉斯雷回复@浮生递归:确实,这个没注意。就应该要关注细节。
@浮生递归回复@尼古拉斯雷:其实是个习惯问题。我也是看了阿里的JAVA规范后才养成这个习惯。习惯了之后,不这么写就难受,哈。

@孤尽:get(0),会不会留坑。

@尼古拉斯雷回复@孤尽:哈哈,确实需要改进。写代码也是一种艺术,一种优雅的艺术。

@浮生递归:你用了这么多时间写注释,还会有时间改bug吗?

@尼古拉斯雷回复@浮生递归:这个注释确实有点多,不过这个只是我发到blog上的一个实现注解式的Ioc的demo而已,为了让读者更容易看懂所以才写这么多注释。

@浮生递归回复@尼古拉斯雷:假注释,哈哈!

@尼古拉斯雷回复@浮生递归:平常写代码也经常写注释,不然别人看自己的代码就会出现看不懂看的时间长的情况。

@idcom:我第一个代码上的注释远远超过代码的数量,然而根本没到83行~

@星梦泪痕:尴尬的了,我的第83行刚好是个BUG,catch (Exception)。

想围观更多83行代码?各位快来点击:

https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.4.393518a8tcY4xr&order=score#answer-146875

 

上一篇:Oracle 数据乱码


下一篇:【晒出你的第83行代码】十年全栈编程,视障工程师@蔡勇斌带我们走进他的代码视听世界