1、重新实现API中已有的代码
大多数开发人员都会利用某种框架来减轻工作的负担。对于没有使用该框架经验的开发人员来说,掌握框架的API提供的所有功能非常困难。
因此,他们常常会重新实现API中已有的某些代码。没有经验的开发人员更有可能踩这个坑的原因有两个:
第一,由于缺乏经验,这些开发人员不了解API中有哪些开箱即用的功能。所以他们会白白浪费时间来编写框架中已有的代码。由于缺乏经验,所以他们无法充分地利用框架。
第二,缺乏经验的开发人员不知道去哪儿找相应的文档。更有甚者,有人根本不看文档。
对于没有经验的开发人员来说,这是一个陷阱,因为重新创建相同的功能似乎很诱人。有些函数只需重写几行代码即可。
另外,重写这几行代码也不需要花费太多时间。但重写相同的代码有一定的弊端:造成代码库持有重复且未经测试的代码;由于新函数的引入,代码会更加复杂。
其他开发人员不熟悉这个函数,而且也不理解你为什么要引入这个函数。从整体来看,你的这一举动增加了复杂性,却没有充分的理由。
2、简单的问题不要复杂化
有时开发人员会遇到力所能及范围之外的工作。问题在于经验丰富的开发人员知道何时承认这一点。
有经验的开发人员会想方设法的尽量简化工作,而没有经验的开发人员则会将简单的问题复杂化,复杂的问题更加复杂化。
实际上,我们应该尽量保持简单。增加技术债务只会降低代码的可阅读性,增加维护的难度。
3、过度自信
如果你问一个过度自信但是缺乏经验的开发人员,某个需求需要多长时间能做完,他会尽可能地告诉你一个最短的时间。
如果你问过度自信的开发人员是否写了测试,他会告诉你没有必要。他会说他的代码不可能有bug,不可能出问题。
如果你觉得自己的第一份工作就无所不知,那么就大错特错了。如果你明明什么都不懂,却没有自知之明,那么才是真的可悲。这才是大多数缺乏经验的开发人员身上最大的问题。
所以,作为开发人员,一定要学会谦虚,虚心接受前辈或者别人的建议和意见。从经验丰富的开发人员那里获取建议,这样才有助于自身的成长。有信心是好事,但过犹不及。
4、仅测试正面测试用例
缺乏经验的开发人员通常会专心交付功能或需求。这就是所谓的快乐之路。
然而,功能或需求需要测试。经验不足的开发人员和经验丰富的开发人员在这点上有很大的分歧:没有经验的开发人员只会测试用户应有的操作,而经验丰富的开发人员也会为边缘案例编写测试。
仅测试正面测试用例是很天真的做法。用户具有太大的不可预测性,而你需要测试的也不仅仅是正面测试用例。
5、频繁更换工具
拥有合适的工具,并熟练的掌握可以为你的日常工作节省大量时间。你应该花一些时间找到合适的工具。在寻找工具时,你应该选择能够实现其承诺的工具。
如果你有合适的工具,那么就应该坚持使用下去。不要每周都换工具。你需要一定的时间来了解并掌握这些工具。
另外,你还应该潜心研究某个优秀的IDE,因为你工作的大部分时间都需要使用IDE。了解键盘快捷键以及如何使用代码片段,并创建自己的代码片段可以加快日常工作。
6、只注重技术,不关注业务
没有经验的开发人员还没有掌握他们的技术栈,因此大多数人都倾向于专心学习技术栈,却对业务视而不见。为了成为技术栈的大师,熟知业务非常重要。你需要明白为什么要构建这些功能。
有些开发人员只对工作中的技术方面感兴趣。他们不关心那些造就了自己所在岗位的商业或经济因素。
说到底,作为开发人员一定要谨记,我们是在为企业创造价值,而业务能否成交将直接影响企业最终收益,企业最终收益将直接关系到每个人的价值和收益。
所以,作为开发人员,既要注重技术,也要关注业务层面。
程序员从新手到对业务熟练上手,需要学习的东西有很多,如果没有系统的去学习掌握一些技巧,试错的代价就会很大!