专栏名称: 九章算法
专业的北美IT求职经验分享、技术交流社区,帮助你找到好的IT工作。由硅谷顶尖IT企业工程师维护。提供专业的算法培训/面试咨询,官网 www.jiuzhang.com
目录
相关文章推荐
九章算法  ·  最后一天!九章消费券免费抢! ·  3 天前  
九章算法  ·  美国正在萎缩的行业!华人千万别碰! ·  6 天前  
九章算法  ·  疯狂给码农“砸钱”的公司!Top3完爆大厂! ·  4 天前  
51好读  ›  专栏  ›  九章算法

使用tab, 还是空格, 小小编程习惯却有巨大的差别

九章算法  · 公众号  · 算法  · 2017-08-25 07:37

正文


在 《Silicon Valley》 第三季中,Richard因为用Tab还是空格的问题和本来情投意合的女孩吵架,质问女孩为什么用空格键而不用tab,最后Richard甚至说出“我不会和一个用空格键而不是tab键的人同床共枕”,两人不欢而散。


有的人觉得,不管使用 tab 还是空格,都没有什么区别。但是,事实上,这样一个小小的习惯,却可能有巨大的差别。(有的人通过对编译器的设置,使得tab键可以替代空格键,此处忽略,不讨论这种情况)


作者 | Ariel Wang

编辑 | Francesca  jin

专栏 | 九章算法



使用空格键的比使用tab键的工资更高


最近,David Robinson 做了一个有趣的研究。他根据 Stack Overflow 2017开发者调查的原始数据,进行了线性回归分析。研究发现,在控制了国家、接触编程的年数、开发人员类型和语言、教育水平、公司规模等要素后,使用空格键的程序员工资将会比使用tab键的程序员高出8.6%。


不过,David Robinson 也同时指出: 使用tab键或空格键与薪资是有相关性而不是因果关系。 David 坦诚,他无法确定他控制了数据集中存在的所有混杂因素。




使用空格键更有利于编程工作


使用空格键更有利于团队工作


在不同的编辑器里tab的长度可能不一致,所以在一个编辑器里用tab设置缩进后,在其它编辑器里看可能缩进就乱了。如果其他人用转换tab为空格的编辑器打开你写的文件,然后版本控制程序就会报冲突,非常非常麻烦。

而使用空格键,任何人用任何编辑器查看代码都是对齐的,包括网页上查看(比如在GitHub上看代码)。

使用空格键有利于代码压缩发布


如果代码需要压缩发布,使用空格的代码通常具有更好的压缩率。这里面的原理是信息量,使用 tab 缩进的代码中,仍然不可避免的含有空格(运算符之间的间隔,注释等等),但使用空格的代码中根本不含有 tab,这使得 tab 缩进代码虽然不压缩的时候更小,但熵更高,因而压缩率较差,压缩之后反而更大。

使用空格键可以更精确控制视觉呈现


比如,有些爱搞怪的程序员喜欢在代码中画字符画,就会喜欢空格键的精准操作。

使用空格键可能显示出你的不良coding习惯


Tab 是制表符而不是缩进符,正如在 html 页面中大量使用进行布局是个不好的编程习惯一样,在编程中大量使用制表符布局通常也不是个好习惯。



通过设置,可使 Tab 键代替 Space 键



Tab键也有它的好处。其中最突出的优点,莫过于按键次数少啦。

因此,很多编程老鸟他们会设置对编辑器中的 Tab 键是可以进行个性化设置,通过调整 Tab 键的字符宽度,使之等同于 Space 键的操作。

那么,你平常 Coding 的时候,是使用 Tab ,还是空格,还是使用 Tab 其实设置成空格呢?




九章算法 | IT 高阶精英求职教育平台


《九章算法班》

《系统设计班》

《Big Data 项目实战班》

《算法面试高频题班》

《Java入门与基础算法班》


正在报名中!

报名登陆官网 www.jiuzhang.com

或点击文末“阅读原文”








请到「今天看啥」查看全文