爆栈思想 – 如何强迫开发人员提高代码质量

栏目: IT资讯 · 发布时间: 6年前

内容简介:在微博看见有同学说花了不少时间修警告,修上瘾了,不想回家吃饭。首先,这位同学,身体健康是自己的,热爱工作也好,给老板卖命也好,也得work life balance,劳逸结合。首先,为什么要把警告给修了呢?一般来说,警告来自编译器,分几种情况:这些警告,说白了,首先是碍眼、闹心,像我这种推崇代码质量追求性能的有代码洁癖的开发人员,我就不能容忍警告。

劳逸结合

在微博看见有同学说花了不少时间修警告,修上瘾了,不想回家吃饭。首先,这位同学,身体健康是自己的,热爱工作也好,给老板卖命也好,也得work life balance,劳逸结合。

警告有什么不好?

首先,为什么要把警告给修了呢?一般来说,警告来自编译器,分几种情况:

  • 编译器认为有潜在错误的可能,譬如类型转换丢失数据等
  • 冗余代码,譬如多余的变量等,在C#中经常遇到的是try/catch(Exception ex),这个ex异常变量很多开发人员都不会使用,所以就成了警告。

这些警告,说白了,首先是碍眼、闹心,像我这种推崇代码质量追求性能的有代码洁癖的开发人员,我就不能容忍警告。

然而,代码洁癖不是最重要的,如果因为像long <-> int之间类型转换过程中导致数据丢失,那这种警告必须修复,因为错误到了生产环境后的修复成本会高很多。

怎么修复警告

有同学说:把警告屏蔽掉,世界就安静了,problem solved!但是,这种掩耳盗铃的伎俩迟早会导致麻烦找上门来。

我曾经在一个公司做过,其主系统几百万行代码而已,几百个警告,修了我好久,都修好了,一段时间之后,发现又有几十个,身心俱疲。这显然是开发人员完全不理解为什么警告要修复,也不理解怎么避免警告。

在另外一家公司,2200万行代码,70万个单元/整合测试, 没有一个警告 ,因为任何警告都被视为错误无法编译通过。当然,开发人员的平均水平高也是很重要的一个原因。

所以,要么狠下心把警告视为错误让开发人员老实修复,要么培养提高他们的素质。不过,根据我10多年的开发经验,不能相信开发人员的自律,必须两手都要抓,两手都要硬,因为你永远不知道哪天被猪队友坑了。在这点上,Visual Studio有“把警告视为错误”的选项。

Visual Studio大法好,你值得拥有!

想知道为什么我这么多年来能掌握那么多种技术,不仅仅是广度,还有深度,达到我所说的“爆栈”吗?

在《爆栈之旅》,我 根据大家都实际情况、水平、方向等规划职业路径,手把手带你做实战的项目 ,用最高效的办法达到你想要的高度。

爆栈之旅

是否想技术水平快速提升?是否希望快速成为公司的技术骨干?

核心价值

  • 把我这10多年来所学到的知识、总结的经验、吸取的教训分享出来

  • 针对不同的学生量身定制规划学习成长路线、1对1个人指导、代码审阅等

  • 解答各种技术问题

  • 为公司提供技术解决方案

请查看本站右边的信息联系我。

版权所有

所有文章内容版权所有,任何形式的转发/使用都必须先征得本站书面同意。本站保留一切追究的权利。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据库系统概念

数据库系统概念

(美)Abraham Silberschatz、(美)Henry F.Korth、(美)S.Sudarshan / 杨冬青、李红燕、唐世渭 / 机械工业出版社 / 2012-3 / 99.00元

【编辑推荐】 数据库领域的殿堂级作品 夯实数据库理论基础,增强数据库技术内功的必备之选 对深入理解数据库,深入研究数据库,深入操作数据库都具有极强的指导作用! 【内容简介】 本书是数据库系统方面的经典教材之一,其内容由浅入深,既包含数据库系统基本概念,又反映数据库技术新进展。它被国际上许多著名大学所采用,包括斯坦福大学、耶鲁大学、得克萨斯大学、康奈尔大学、伊利诺伊大学......一起来看看 《数据库系统概念》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具