懂你职场指南

阿里巴巴员工职业发展手册,阿里巴巴员工职业发展手册是什么

大家好,今天小编关注到一个比较有意思的话题就是关于阿里巴巴员工职业发展手册的问题,于是小编就整理了1个相关介绍阿里巴巴员工职业发展手册的解答,让我们一起看看吧。

  1. 为什么阿里巴巴Java开发手册中不允许魔法值出现在代码中?

什么阿里巴巴J***a开发手册中不允许魔法值出现在代码中?

这个案例描述是有问题的。故障的原因不是魔法值,而是拷贝错了且没有测试。不允许魔法值只是最大限度的避免J***a编码人为因素导致的错误,但是跨语言的调用还是可能出错。

对于任何语言这一点都是互通的。

阿里巴巴员工职业发展手册,阿里巴巴员工职业发展手册是什么
图片来源网络,侵删)

一个未经定义的字面值会造成很多不可预知的错误。

如果这个字面值是一个全局缓存中某个常用数据的键,这个常用数据在系统很多模块都用到了。

当从全局缓存中访问这个数据时,如果键没有预先定义,那么***10次都不出错的可能会增大。

阿里巴巴员工职业发展手册,阿里巴巴员工职业发展手册是什么
(图片来源网络,侵删)

当然,这不是最重要的问题。更重要的是,如果有一天项目经理或者他人觉得这个名字有问题,给改了个名字。那么,10个使用的地方,漏改的可能会更大。

还有更麻烦的是,当有人给缓存放另外的值得时候,可能不记得这个名字的缓存已经被占用了,然后把自己的值放进去了。这时候,使用这个缓存的其他模块就要不得不接受,缓存已经不是自己想要的事实。

使用预先声明的常亮能极大的避免这两种事情的发生。当然,不能完全避免,毕竟会有人不按规范来。

阿里巴巴员工职业发展手册,阿里巴巴员工职业发展手册是什么
(图片来源网络,侵删)

阿里巴巴的开发手册是他们自己开发过程中经验总结,不能说是最好,但一定比大多数项目小组的规范要好很多。

有人说阿里的网站是php,但阿里的系统服务用的是Spring Cloud做的是服务集群。这部分完全是J***a实现的,阿里还是Apache基金会的重要成员,阿里自己重写了MySQL并应用在双十一,这些都不胜枚举。

魔法值一直都是编程的一大难题。我在开发中最讨厌别人用魔法值,因为需要用这个值的时候,只能手动***或者手敲(很容易出错)。如果用静态常量我可以通过IDEA的代码提示获取到这个值,这样一来 方便很多了啊。

道理很简单,阿里巴巴规模很大,员工很多,员工的流动也很频繁,试想一下一位代码中满是魔法值的老员工辞职了,让接替他的新员工怎么办?又让阿里巴巴怎么办?

作为互联网龙头企业,阿里巴巴没有那么多时间去让新员工适应老员工的代码写作风格,高效是它永恒的追求,所以才有了这么一套标准化的代码写作规范。

其实大多数的开发规范都会禁止魔法值(未经预先定义的变量)的使用,因为它存在着很多的弊端。

  • 魔法值容易出错。当在代码中多次使用同样字面值时,如果出现了拼写错误,那么程序将会发生不可预料的错误,而且这种错误难以在前期发现。而如果使用变量,IDE和编译器等就可比较容易发现错误,减少像题中出现键值不相同的情况发生。
  • 魔法值难以修改维护。当我们需要修改多次出现的魔法值时,我们就要进行查找之后再修改,有时一些魔法值容易与其他代码混淆,此时修改工作就十分困难了。而预先定义的变量仅需修改一处就可以了,明显更为方便。
  • 魔法值降低代码可读性。当代码中遍布魔法值,尤其是一些魔法数字的时候,除非有详尽的注释,否则其他人很难弄清魔法值的含义,代码开发者自己也不容易记得。而使用合适的名称进行变量命名,可读性就会大大增加。

在开发中应养成良好的编码习惯,避免魔法值的使用,提高代码的正确性和可维护性。

因为魔法值就像魔法一样,没人能懂啊。

比如我写一段程序

if (var == "2"){

} else if(var == "5"{

}

你看到这个代码能够知道 2 和5 分别代表什么意思吗? 是不是很懵。

写这样的代码,当时可能记得是什么意思,如果几个月后,后者作者离职了,

其他人再维护这样的代码,就搞不懂了。

到此,以上就是小编对于阿里巴巴员工职业发展手册的问题就介绍到这了,希望介绍关于阿里巴巴员工职业发展手册的1点解答对大家有用。

[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.dmwbw.com/post/54419.html

分享:
扫描分享到社交APP