是否似曾相识?每个开发人员都犯过的十五个错误

新闻
犯错是人之常情,也是促进我们成长的关键,不必惧怕犯错。请试着从他人的错误中学习借鉴,以免今后重蹈覆辙。

本文转载自公众号“读芯术”(ID:AI_Discovery)

[[359315]]

 犯错是人之常情,也是促进我们成长的关键,不必惧怕犯错。请试着从他人的错误中学习借鉴,以免今后重蹈覆辙。

  • 在长寿命的代码中使用快速粗糙的修复程序。快速粗糙的解决方案会破坏代码库的质量,很可能增加不必要的技术负担。长远来看,这样的方案会造成反噬。最后很可能需要重构。
  • 缺乏实践。熟能生巧,要想成为一名开发人员需要更多的实操。最大错误是忘记时不时得学习新事物。如果想学习编程语言之类的新知识,大概率需要利用业余时间。
  • 低估工作量。估测工作量是软件开发的一大难事。在Scrum疏理时经常有人说“这小功能一个故事点就能搞完”。但任务可能并不简单,预期方案也不起作用。所以在估测时记得计入测试时间,这点不仅适用于开发人员。
  • 写显而易见的注释。我们都曾看过这样的注释:什么也没解释,只专注于代码的功能(例如,foreach循环的注释写着“产品遍历循环”)。当写注释时,不要只关注代码是做什么的,要关注此代码的创建原因。
  • 注释掉代码块。代码块中多个功能被注释掉的情况比较常见。没有人知道代码块仍然存在的原因或是否有用。没有人删除是因为每个人都认为其他人可能需要它,大胆删除注释掉的代码块。如果代码仍然有用,可在版本控制中找到。
  • 仅测试基本逻辑方案。在编写测试时不要只考虑基本逻辑,也要思考预期之外的情况,记得测试最坏的情况。
  • 代码格式凌乱。这是经验不足的开发人员最常犯的错误。它使代码更难阅读,也会给其他需要阅读代码的开发人员带来困扰。通过安装格式化代码的linter可以修复凌乱的代码。
  • 不记录任何相关信息。有用的日志可以为开发人员提供极大的帮助。日志消息可以帮助洞悉代码的问题所在,并节省大量调试时间。发生特定错误时,好的日志消息会提供有关用户正在执行的操作信息。
  • 由于缺乏认知而重新开发wheel。当开发人员不知道框架中有哪些功能时,就会发生此错误。由于缺乏认知,开发人员实施的新方法会与框架中已有的几乎相同。
  • 在没有解决方案的情况下开始编码。刚开始可能令人兴奋,但最终会反噬回来。计划和组织代码是编码的重要组成部分。不要不做计划就开始编码,编写代码之前,有很多事情要考虑。
  • 不好的提交说明。很多人都有过这样的经历。“修复错误”或“ WIP”都不是很好的提交说明。好的提交说明很重要,应该多花一些时间将它写好。好的提交说明可提供内容更改和更改原因的有用信息。出现问题时,修订历史记录是快速找出病症所在的重要资源。
  • 代码中包含魔数。魔数是特定值,它具有无法解释的含义,出现多次,可以并且应该以命名常量替换。魔数不可读,并且不为开发人员提供任何信息。最重要的是,魔数经常多次用于程序中的不同位置,很容易产生错误。
  • 一个功能中要素太多。试着让功能做好一件事。不要让这个功能同时获取、处理和输出数据。将所有这些职责划分为不同的职能。一个用于获取,一个用于处理,另一个用于输出数据。功能专注于单项是使它更强大的关键。
  • 不编写自动化测试。起初编写自动化测试会比手动测试花费更多时间。长远来看,多花时间编写这些自动化测试是值得的。手动测试所有内容无聊又耗时,并且人为因素更容易出错。
  • 不必要的复杂化。大多开发人员都有过为了实施特定设计模型而实施的行为。仅仅因为有机会实施某种设计模式不意味着就应该这样做,这样做只会增加代码库的技术负担。

这些错误你犯过么?有则改之,无则加勉,这些坑要注意起来啦。

 

责任编辑:华轩 来源: 读芯术
相关推荐

2020-04-20 18:15:46

开发自信技术

2020-05-17 16:10:36

开发人员软件开发开发

2022-09-04 15:28:25

开发React程序员

2015-02-10 10:21:22

程序员

2023-02-26 18:43:05

SQL工具数据库

2015-09-21 09:34:57

2017-10-11 13:20:56

Linux命令工程师

2020-09-23 22:40:31

Python 开发编程语言

2019-04-24 08:56:34

Java开发人员常犯错误

2023-10-13 18:10:14

编程语言Rust

2022-12-29 08:27:03

Java开发人员编码

2024-06-04 14:31:16

2013-01-28 10:25:46

开发人员设计技巧

2020-10-13 18:20:55

TCPHTTP网络协议

2020-05-25 16:36:19

开发工具编码

2024-10-21 13:15:03

2021-02-05 12:58:18

开发人员CICD

2023-03-07 17:56:09

Docker容器开源

2023-10-08 13:59:56

Git开发

2024-06-03 10:35:41

点赞
收藏

51CTO技术栈公众号