“经验是最严厉的老师。它上来就把你考倒,尔后才授教于你。”奥斯卡·王尔德这句话用来形容新手程序员的生活很贴切。程序员要从实践中学习。在实践中,你会犯错误,但只要你能从错误中吸取教训,就能获得成长。
来回顾一下吧,你的哪些特征曾“透露”出这是一个新手。
结构混乱的代码
新手开发人员编写的代码常常结构混乱,如果有轻量级结构就已经很不错了。而造成这点的原因在于他们过于关注代码的运作,经验丰富的开发人员知道,作为一名开发者,你还有更多的工作要做。
编写代码并使其运作只是开发人员工作的一小部分,新手开发人员却把它当成了重中之重。随着经验的积累,你会意识到你的大部分工作是维护项目,而不是从头开始构建新项目。意识到这一点之后,你将以完全不同的方式进行编码。这会使代码更容易维护,更易于其他开发人员理解。
如果没有意识到这一点,就会出现函数堪比一篇文章大小的情况。很多问题也随之而来,例如可测试性。你要如何测试堪比论文的函数,而且它还要实现五个不同的功能?
如果只是想让代码运作起来,在大多数情况下,这样的代码都是没有经过深思熟虑的,代码质量会因此受到影响。这种类型的代码通常看起来像过程代码,不遵循诸如单一功能原则这样的编码原则。当进入维护阶段,你就会意识到代码质量欠佳会带来多大的问题。
乱枪除错
新手开发人员遇到问题时,常常会开始胡乱调试,想到哪里试哪里。在不知道实际问题是什么的情况下,随机修改代码中的一些内容,希望瞎猫碰上死耗子,成功解决问题。
很明显,这在大多数情况下是行不通的,这样做只会引入更多的bug。开发人员应该做的不是胡乱调试,而是收集有关问题的更多信息。
首先要做的是找出重现问题的方法。在更改代码之前收集信息是很重要的,这样就可以了解到底是什么导致了bug。打开日志文件是调试之旅的一个良好开端。看看能否找到一些有用的信息,指引你找到正确的方向。
找到了bug的出处并修复之后还不算完,如果真的想把事情做好,至少应该为修复程序编写一个测试,以便在未来出现问题的时候得到保护。
过于关注技术
新手开发人员仍在学习技术的阶段。因此,他们关注的重点通常是掌握自己的技术栈。这也说得通,因为如果你想成为一个出色的开发人员,就需要掌握相关技术栈。但是开发人员应该关注的不仅仅是技术。
当了解了技术栈的所有细节后,不应该把业务抛在脑后。因为这就是你做这份工作的原因。你是在为公司创造价值,还是在一些与公司无关的事情上花费了太多的时间?这是一个应该一直问自己的重要问题。
作为开发人员,你不能仅仅专注于工作的技术方面,还需要牢记业务和经济因素才是评判你工作价值的关键因素。
做事的差别
团队工作中的一些小细节也会“暴露”新手开发人员,他们常常喜欢用自己的方式做事,而不是和团队中的其他人保持一致。有时这种情况是无意中发生的,新手开发人员不能认识到解决方案中的某些模式。
为了与团队成员统一步调,你可以查看创建好的所有pull请求。不必全部都看,只要确保了解其他开发人员是如何解决某些问题的就可以了。他们的解决方案和你解决问题的方式是否相似?如果不是,问问他们为什么选择这种解决方案,以及是否考虑过你的解决方案。
别担心,每个优秀的程序员都是从菜鸟时期走过来的。转变思路,汲取经验,你离告别新手期并不太远。
责编AJX
-
开发
+关注
关注
0文章
382浏览量
42265 -
编程
+关注
关注
90文章
3725浏览量
97529 -
源代码
+关注
关注
96文章
2953浏览量
70871
发布评论请先 登录
芯科科技低功耗Wi-Fi开发指南
蓝牙信道探测工作原理及开发套件
嵌入式软件开发的 10 个技巧分享
Nordic发布nRF7002 EBII 开发板, 支持Wi-Fi 6, 解锁nRF54L新玩法
现已上市:AMD Spartan UltraScale+ FPGA SCU35 评估套件——面向所有开发人员的经济实惠平台
Bourns 深耕印度,在地设计 - Bourns 印度设计中心 为开发人员提供当地先进技术资源助力客户加速创新!
恩智浦FRDM i.MX 8M Plus开发板详解
嵌入式开发的关键点介绍
GD32的串口DMA收发数据失败怎么解决?
第三届大会回顾第7期 | 面向OpenHarmony大规模代码的路径敏感的稀疏值流分析
三大特征透露出新手开发人员需改正的地方
评论