前几天,在阿里巴巴的一个小黑屋里,5名对代码有着极致追求的程序员参与了阿里代码领域最高荣誉“多隆奖”最终角逐(多隆作为淘宝的第一代程序员,也是很多技术人心中的大神)。

那天代码评审现场,看到某代码片段最后结尾,多隆突然补上一句,往上翻看下第83行。代码一般都是几百行,他看到最后,居然还记得第83行的一个细微瑕疵,这得是对代码怀着怎样的敬畏之心。

五四青年节,作为70、80、90的码一代新青年,还记得你们最初写的那些代码吗?来晒晒属于你的“第83行”。

我们也邀请了业界的大牛、大神们来Review哦~你也可以点名邀请一些大牛来点评Review,最终将由网友和大牛评选出获得点赞和大牛评分最高的2位参与者,并由多隆在5月29日第二届研发效能嘉年华直播间颁发“多隆奖”。

收到我们的邀请之后,孤尽老师在第一时间响应并晒出了自己入职第一年写的一段代码:

这也是我入职第一年写的代码,这个代码虽然比较简单,但是还是有非常多的商榷之处的。大家看看有没有不符合《阿里巴巴JAVA开发手册》的部分?

尼古拉斯雷:手册中,建议将局部变量定义成基本数据类型。RPC方法的返回值和参数必须使用包装类型。

不知道这两条规范是否适合用在,孤尽老师的那些代码中?

孤尽 回复@尼古拉斯雷:

你看对了,的确是局部变量没有定义成基本数据类型。这其实是很大的坑,遇到自动解箱,大循环内就会非常慢。

尼古拉斯雷:我好像记得在规约中,建议将逻辑判断语句定义成一个变量?是这样吗?我在手册中找不到了。

孤尽回复@尼古拉斯雷:这个吗?

微wx笑 回复@孤尽:就一个条件没必要了吧,声明一个变量不占内存空间?

尼古拉斯雷回复@孤尽:原来是复杂的逻辑需要定义!

尼古拉斯雷:手册中,建议将局部变量定义成基本数据类型。RPC方法的返回值和参数必须使用包装类型。

不知道这两条规范是否适合用在,孤尽老师的那些代码中?

孤尽回复@微wx笑:

嗯。我们的扫描规则上实现的是:https://github.com/alibaba/p3c出现 两个及以上的逻辑运算符,会提醒去定义出来了。至于占内存空间,忽略吧。

孤尽回复@尼古拉斯雷:

你看对了,的确是局部变量没有定义成基本数据类型。这其实是很大的坑,遇到自动解箱,大循环内就会非常慢。

尼古拉斯雷回复@孤尽:原来如此

孤尽老师简介:《阿里巴巴JAVA开发手册》的主要作者,在阿里巴巴集团历任研发、架构师、技术、主管等不同的角色,承担过双十一、国际化、代码中心等大型项目,有着丰富的一线编程经验,目前是研发协同平台Aone代码中心负责人,在大数据、高并发、研发效能领域均有较深的造诣。

下面我们也精心挑选了参加活动的十位同学的代码,也请大家来一同Review下,悄悄的说一声:优秀点评有小礼物拿哦!

21、@1289297105434890-我们的门店支付宝收银接口,83行是决定性的一个参数 :)https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-146960

22、@1126215720856796-我的83
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-146865

23、@李沃晟-这是大二刚学Java,自己做的第一个管理系统,虽然是用Servlet实现的,但是这是我写的第一个比较完整的系统。掩面/
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-146811

24、@云百万-matlab打出来的爱心的代码,向代码致敬 
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-146787

25、@幸运兔-从大学时代起就比较注重代码书写规范,当初的汇编没有太多的约定,自己都会为每行代码加上注释,好处一看便知,现在转行Java之后多年,依旧能够快速理解那时代码逻辑。
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-146572

26、@似水的流年-第一次独自写项目时候写的一个微信登陆接口,76行的判断用了魔法值,没有定义为常量~~~
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-146541

27、@1172422055693247-我的83 https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-147175

28、@1399521533649486-我的83判断 
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.618.ae3b18a87eptAL&order=score&type=&p=2#answer-147172

29、@江小白太白-我的83空格 
https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.198.656818a8RGBXar&order=score&type=&p=3#answer-147169

30、@1214042514913370-找了几篇代码居然83行全都是注释或者空白-.- https://yq.aliyun.com/roundtable/67516/?spm=a2c4e.11154000.rtdmain.198.656818a8RGBXar&order=score&type=&p=3#answer-147163

FAQ:

1.如何参与?

点击链接,前往评论。

2.有固定的格式吗?

没有,但请规范自己的评论用语

3.我也想晒出自己的代码,请大神点评怎么办?

简单,直接在活动下方回复你的代码,不过不能保证大神每个都能回复到

4.我想推荐我的同学朋友参加怎么办?

文章末尾有分享按钮,可以选择分享到微博(也可以这个时候只复制文章链接)

想知道“寻找你的83行”最终的大奖“多隆奖”会花落谁家吗?5月29日第二届研发效能嘉年华将直播颁奖典礼!饿了么CTO、飞猪未来酒店CTO也将在嘉年华分享技术心路,全天候技术盛典等你来看!点击此处免费报名!

【晒出你的第83行代码】《阿里巴巴Java开发手册》主要作者孤尽晒出入职第一年的代码...相关推荐

  1. 【代码质量】-阿里巴巴java开发手册(代码质量提升神器)学习笔记

    前言:<阿里巴巴 Java 开发手册>是阿里巴巴集团技术团队的集体智慧结晶和经验总结,有了这些前人总结的经验,可以帮助我们写出高质量的代码,同时可以减少Bug数量,少踩坑,提高代码的可读性 ...

  2. 阿里巴巴Java 开发手册 码出高效,码出质量 1.4.0

    前言 <阿里巴巴Java 开发手册>是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模一线实战的检验及不断完善,系统化地整理成册,回馈给广大开发者.现代软件行业的高速发展对开 ...

  3. 【晒出你的第83行代码】踌躇满志的三位高中生,以敬畏之心踏上了代码征程...

    最近社区有个很火的<向代码致敬,寻找你的第83行>的活动,缘起于前几天,在阿里巴巴的一个小黑屋里,5名对代码有着极致追求的程序员参与了阿里代码领域最高荣誉"多隆奖"最终 ...

  4. 为什么阿里巴巴Java开发手册编码规范里推荐单个方法的总行数不超过80行

    该篇文章参考了: 1. 阿里巴巴<java开发手册>v1.5.0 华山版 2. <码出高效:Java开发手册> 单个方法的总行数不超过80行 在阿里巴巴<java开发手册 ...

  5. 【晒出你的第83行代码】阿里研究员福贝,用一个小演示程序来解释一下 C++11/14 里的 closure 是可以多么的“爽”...

    为什么80%的码农都做不了架构师?>>>    摘要: 在五四青年节之际,社区发起了来晒晒属于你的"第83行"的活动,活动中邀请业界的大牛.大神们来晒代码或者Re ...

  6. 【晒出你的第83行代码】剑指星辰,两位开发者贴出了小试牛刀的毕设代码

    2019独角兽企业重金招聘Python工程师标准>>> 最近社区有个很火的<向代码致敬,寻找你的第83行>的活动,缘起于前几天,在阿里巴巴的一个小黑屋里,5名对代码有着极 ...

  7. 阿里巴巴Java开发手册及Java代码规约扫描eclipse插件

    一.github地址: https://github.com/alibaba/p3c 二..eclipse插件的安装 此处示例采用eclipse,版本为 Neon.1 Release RC3 (4.6 ...

  8. 阿里官方Java代码规范标准《阿里巴巴Java开发手册 终极版 v1.3.0》下载

    转载:https://www.cnblogs.com/han-1034683568/p/7680354.html

  9. 算法导论、数据结构、设计模式、代码整洁之道、大话设计模式、程序员修炼之道、编译原理、编程之美、阿里巴巴java开发手册等电子书合集

    关注公众号[static修饰符],回复"java电子书"获取资源 学习更多的java知识,一同进步.

最新文章

  1. Linux之编辑器 vim
  2. Spinnaker:云原生多云环境持续部署的未来这样玩!
  3. 关于LookupError: No installed app with label ‘admin‘.报错的解决
  4. redis源码剖析(十二)—— RDB持久化
  5. http status 404 – 未找到_从零开始搭建自己的网站004添加404处理页面
  6. 微软发布的新开源编程语言 Power Fx
  7. 查找算法-------插值查找
  8. qsor快排序以及cmp函数
  9. Django 千锋培训的学习笔记
  10. 硬件笔记1:80508550三极管对管驱动电机电路(已经实测可用)
  11. OpenGL第八版--初识OpenG
  12. 许奔创新社-第29问:什么是创新者的王者匠心?
  13. 二维码图片生成(带文字显示)
  14. 重新定义“车规级”激光雷达
  15. 2020牛客暑期多校训练营(第九场) Groundhog and 2-Power Representation
  16. pytorch第06天 图片分类器
  17. 基于深度学习的小样本分类识别方案总结
  18. 【soft6星评论】中台只是一种说法,中小企业主们要擦亮眼睛
  19. Android MVVM架构设计模式,从DataBinding开始
  20. Error: Flash Download failed - “Cortex-M0“解决办法

热门文章

  1. 从零开始VCS+Verdi 安装过程
  2. 解决0x00000001电脑蓝屏问题
  3. load()方法异步请求数据
  4. bzoj4372. 烁烁的游戏【动态点分治】
  5. Java 复习之多线程
  6. 【CSS系列】background-clip 定义用法
  7. viper4android小米活塞,打造小米手机终极HIFI 有效提升小米手机音质
  8. dof景深matlab,CG制作景深(DOF)的方法
  9. 谷歌浏览器,查找CSS选择器
  10. spring mvc前端验证代码生成器