没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|行业资讯|编辑:我只采一朵|2017-06-20 13:53:44.000|阅读 144 次
概述:你用Tab还是空格来处理代码缩进?这个问题通常会引起程序员间的”圣战“,它已经无数次引起争论了。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
原作者:David Robinson
译者:诗书塞外
你用Tab还是空格来处理代码缩进?
这个问题通常会引起程序员间的”圣战“,它已经无数次引起争论了。我自己是用空格的,但是我从没认为两种习惯之间有什么很重要的区别。但是今天我们要公布Stack Overflow 2017开发者调查得到的一部分源数据,而且分析表明用空格还是用Tab真的是有所谓的!
用空格的程序员比用Tab的程序员挣钱多
有28657名职业程序员(他们不是学生也不是实习生)参与了这个”用Tab还是用空格的调查“。这之中,40.7%的程序员使用Tab,41.8%的程序员使用空格,17.5%的程序员两者都用。其中,12426名程序员填写了Ta的薪水。
分析这些数据,我们得到一个很有趣的结论,用空格缩进的程序员比用Tab缩进的程序员赚的更多,即便两者拥有相同的编程经验。
从图中可以看出,使用空格缩进的程序员的薪资中位数是59,140美金,而使用Tab缩进的程序员的薪资中位数是43,750美元。其他国家程序员的薪资已经由当地货币换算成美元了。同时使用空格和Tab的程序员薪资水平基本和使用Tab的情况差不多:在后面分析中我们会忽略这部分混用的程序员。
这个结果很令人惊讶,但是结果本身还不能说明什么问题。当我第一次看到这个结论的时候,我怀疑是不是某一个因素影响了结果,比如程序员所在国家或者使用的编程语言。比如可能人均GDP比较低的国家的程序员更喜欢用Tab,而有理由推断这样会拉低用Tab程序员的平均薪资。
如果原因真的如上所想,那么在国家内部进行统计应该就不会有这个令人惊讶的结论了。所以我们选取了样本最多的几个国家,在国家内部进行统计。
在欧洲这个现象相对比较弱,而在印度这个现象却相当明显。不过可以看到,无论在哪个国家内部,使用空格缩进的程序员薪资都比用Tab缩进的程序员高,所以可以证明不是国家这个单独的因素导致了这个差别。
另一方面,我们知道不同类型的程序员会有不同的习惯:比如DevOps会倾向于用空格,而移动开发者更喜欢用Tab。这个差异主要因为他们使用的语言不同。这次的调查中程序员们提供了他们使用的语言的情况,和他们是什么类型的开发者。
从统计数据中看,无论是在同一语言内部,还是同种开发者内部,使用空格的程序员都比使用Tab的程序员薪资更高。
我还尝试了很多其他的因素,比如教育水平和公司规模,得到的结果都是相似的:用空格缩进的程序员薪资更高。我们在这里把调查的提供出来,希望统计学家们能够找出导致这个现象的因素。
评估“空格 or Tab”选择对薪资的影响
如果我们把影响薪资的所有因素都放在一起,那么“空格 or Tab”的选择在这里占有多大的权重呢?
为了解答这个问题,我使用以下因素对工资做了一个线性回归:
这个模型预测使用空格缩进会使得工资相较于使用Tab缩进高8.6%,p值10^-10的置信区间为(6%, 10.4%).(通过这个预测工资的模型,我们能够估算每个因素对工资贡献的百分比,而不是美元绝对值)。从另一个角度计算,我们得出使用空格缩进相当于增加了2.4年的工作经验。
结论
嗯…这确实难以置信,我最开始也没想到是这样的结果。但是即便我尝试了各种解释,这个结论还是站得住脚。我甚至加入了一些调查中没有的因素去计算,这个现象始终都是存在的。
这个结论并不能说明因果关系,我始终不敢确定我已经考虑到所有的影响因素了。如果你是一个数据科学家,统计学家,或者分析师,我们鼓励你下载源数据来检查。如果你想重现这次试验的结果,这里有这篇文章用到的。
我们很希望能听到任何有关于这个现象原因的理论。
为了保住我的薪水,我决定继续用空格缩进….
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ipmdipw.cn
TestComplete作为一款UI测试工具,通过CLI和REST API无缝集成DevOps工具链,支持自动化测试的触发、并行执行和实时监控。其应用场景包括金融、医疗和制造业,显著提升测试效率、实时反馈和报告追溯能力,助力团队实现质量左移与持续交付闭环。
代码质量与安全性是决定软件开发项目成败的关键因素,但是,随着代码规模的增长和合规性要求的提高,仅依靠人工代码审查和传统测试方法已难以满足需求。Parasoft dotTEST作为一款强大的.NET测试工具,通过自动化检测、提供修复建议和深度安全分析,帮助开发团队提升代码质量,降低安全风险。以下是其三大核心优势:
随着高级驾驶辅助系统(ADAS)功能不断增强,其安全性和稳定性也成为行业关注重点。验证与确认(V&V)是保障 ADAS 系统在各种环境下可靠运行的核心环节。本文解析工程师在 ADAS V&V 中面临的主要挑战,并介绍如何借助 Parasoft 测试自动化工具提升效率、确保合规与安全。
本文为从事工业3D Web开发的技术团队推荐4款成熟的Web3D渲染引擎,助力快速构建高效、稳定、可扩展的在线三维可视化应用。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ipmdipw.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢