立刻见效:成为更好程序员的3条简单规则

新闻
想要练就优秀的编程技术组合需要数年的试错经历。幸运的是,现在有一些小方法可以帮助你很快成为更优秀的程序员和更好的团队成员。

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

想要练就优秀的编程技术组合需要数年的试错经历。幸运的是,现在有一些小方法可以帮助你很快成为更优秀的程序员和更好的团队成员。

[[351441]]

 

尝试破坏写出的代码

你有责任亲自测试自己写出的代码。公司是否拥有出色的质量检查团队并不重要,关键是你要对自己的代码负责。在公司工作的每个人(无论是软件开发人员还是测试人员)的目标都应该是尽快交付高质量的软件。打造出色的产品需要整个团队的合作。

如果不测试代码,那么测试人员肯定会发现你的错误。他们会创建故障票,你修复好故障功能后,将故障票发回。但是如果还存在问题,就还会收到故障票。这样可能会陷入无止境的错误循环,双方都在浪费时间和耐心。仔细测试代码则可以减轻所有人的痛苦,这是你应该始终做的事。

这可能是一个微不足道的变化,但最好还是先测试下自己的代码。编程很复杂,很可能你忽略了一些东西。没有程序员不会犯错,只需花几分钟进行测试就能节省每个人的时间。不管怎么想,请测试写出的代码。如果发现错误,就编写单元测试以避免将来出现此错误。

请放下骄傲并尝试破坏你编写的代码,测试你可以想出的所有不同方案。寻找边界情况。你了解自己的代码应该做什么以及它应该做什么,因此你就是测试代码的理想人选。

 

进行小型提交和拉取请求

 

提交到版本控制存储库以展示代码的历史记录。每个人都应该留下一条有意义的消息,说明进行提交的原因。虽然能够像书一样阅读提交历史有点费力,但是对于试图了解发生了什么的人来说,提交历史应该是可读的。

要做出好的提交,必须将每次提交的范围缩小。这样你每次提交的重点就会放在功能、错误修复和重构等微小的细节更改上。如果提交的内容太大,则无法在简短的提交消息中对其进行描述,因此代码历史记录将变得更难以阅读。

小型提交还具有其他优点,它们更易于测试,并且如果测试失败,也方便调试,因为导致该错误的代码更少。小型提交也更容易还原到较早的提交,因为这意味着在还原时损失的代码更少。

发出拉取请求时,应遵循相同的规则。缩小拉取请求可以使审阅代码的人员更彻底、更确定地执行代码。长达数千行并更改数十个文件的拉取请求将不会得到仔细检查。如果不检查拉取请求,最终会得到较差的软件。而且,如果别人不审阅你的代码,你将不会获得任何反馈,这会阻碍你的成长。

 

快速构建,然后重构

编程是一个复杂的过程。要成为高效的软件开发人员,需要以有组织的方式解决问题。在编写任何代码之前,应该考虑一些对于当前来说比较关键的几个方面。

你想达到什么目的?你确定自己完全了解要求吗?花几分钟时间思考需求可以节省大量时间。同时还应该确保在项目中(或者正在研究的另一个项目中)尚未解决此问题。许多功能都是相似的,那些可以使用的经过验证的代码也许可以直接拿来用。最后,必须提出一些解决问题的方法。

思维固然重要,但小心别陷入过度思考的陷阱。当对目前存在的解决方案有所了解时,请选择最有前途的解决方案并开始编码。不要试图让代码无懈可击,也不要尝试处理所有极端情况,只需完成代码的关键部分即可。

代码的第一个版本不可能是最后一个版本。即使尽力而为,也必须假设解决方案存在缺陷。也许它运行缓慢、难以阅读或依赖过多的外部库。无论是什么,都必须重构。

删除重复的部分,寻找更抽象的版本,并在必要时添加注释。创建一些单元测试,以便可以自信地重构基本功能。还需考虑代码是否可能破坏应用程序其他部分的内容,并且将变量名称更改为其他人可读。

尽一切努力创建尽可能好的代码,这就是成为优秀程序员的所有要求。

 

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

2014-03-31 11:01:39

2016-01-29 10:03:43

优秀程序员黄金法则

2013-04-10 09:35:22

程序员

2011-04-21 16:15:06

PrologjavaPython

2015-11-30 11:01:07

程序员阅读源代码

2015-11-30 08:57:07

源代码阅读程序员

2023-06-27 17:42:24

JavaScript编程语言

2023-11-06 07:19:11

程序员GitHub社交媒体

2015-07-13 11:32:09

PHP程序员正确姿势

2015-10-12 08:56:37

程序员成长法则

2023-02-06 16:46:59

JavaScript程序员技巧

2013-07-16 11:06:51

程序员压力释放

2013-07-25 09:40:01

程序员

2015-10-30 09:49:30

2011-07-25 09:14:40

程序员

2013-07-25 11:28:30

程序员

2010-12-21 15:15:01

完美程序员

2015-01-14 10:17:28

高级程序员

2016-12-19 16:55:10

PHP程序员运维

2013-04-19 10:44:05

程序员禅道
点赞
收藏

51CTO技术栈公众号