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

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

最近社区有个很火的《向代码致敬,寻找你的第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);

现在的代码片段:

7087d96217d7216c4e795d740a1a28e6e70ae7a5

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

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

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

@浮生递归: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

 

目录
相关文章
|
7月前
|
Python
【分享代码】国庆氛围不能少,快来给头像加个国旗
【分享代码】国庆氛围不能少,快来给头像加个国旗
89 0
|
7月前
|
前端开发 算法 JavaScript
2025年阿里招聘已放出,标题没错,就是2025年
机会总是留给有准备的人,话都懂,但真正做到,你至少领先80%的人,先说一个事,就在昨天,V哥帮公众号里的一个用户远程做了沟通,这位女生是长春某一本学校的在读大三学生,将于2025年毕业,从公众号里找到了V哥,暂且称她为小曦。
125 0
|
7月前
|
小程序 机器人 程序员
Scratch3.0——助力新进程序员理解程序(案例一十四、闯迷宫)
Scratch3.0——助力新进程序员理解程序(案例一十四、闯迷宫)
63 0
|
7月前
|
机器人 程序员 C++
Scratch3.0——助力新进程序员理解程序(案例一十一、大象吃苹果)
Scratch3.0——助力新进程序员理解程序(案例一十一、大象吃苹果)
49 0
|
7月前
|
机器人 程序员 C++
Scratch3.0——助力新进程序员理解程序(案例一、画画的蝴蝶)
Scratch3.0——助力新进程序员理解程序(案例一、画画的蝴蝶)
40 0
|
数据库
第一遍阅读之《信息系统开发与管理》(二战)
第二次学习信息系统开发与管理,第一感觉是:必过! 信息系统开发与管理距离我们软件的具体开发很近,在我们生物专业学习过程中,有一门课程叫做《食品仪器分析》,其中有一章节的内容讲的大概是建立一个工厂的过程是怎么样的。这其中的方法和我们的《信息系统开发与管理》的内容有异曲同工之妙,我们要建立的是一个工厂,但是摆脱不了和周围事物的联系。
找不到“妹”字在哪?一款游戏看把你愁的,用我这个代码逻辑,不再被游戏困扰!
找不到“妹”字在哪?一款游戏看把你愁的,用我这个代码逻辑,不再被游戏困扰!
174 0
找不到“妹”字在哪?一款游戏看把你愁的,用我这个代码逻辑,不再被游戏困扰!
|
前端开发 测试技术
测试平台代码实现145: 平台主题-夏日清凉4
测试平台代码实现145: 平台主题-夏日清凉4
测试平台代码实现145: 平台主题-夏日清凉4