高效程序员背后的秘密

2025-05-24

高效程序员背后的秘密

成为一名程序员,远不止简单地坐在电脑前通过 Stack Overflow 寻找解决方案那么简单。你需要一套技能,能够以抽象的方式找到解决方案,并运用编程语言的具体知识来实现​​它们。我们是问题解决者。但这真的是成为一名优秀程序员的全部吗?未必。

照顾好自己的系统

你每天看到的一切都是一个系统的一部分,从树叶到吃树叶的蚂蚁。所有这些独立的系统都相互依存,并直接或间接地相互作用。你的身体是一个系统,它致力于维持你的生命,但如果你的系统开始衰竭,其他一切也会随之衰竭。

作为一名程序员,我知道我们大部分工作时间都坐在办公桌前,至少有一块屏幕对着我们。此外,我也知道,当我们工作时,我们过于专注于自己的任务或既定目标,以至于忘记给身心休息一下。我为什么要提到这一点?因为我们平均每天面对屏幕的时间是7个小时,而这本身并不是问题所在。问题在于这意味着什么:7个小时保持同一个姿势坐着,7个小时集中注意力,这7个小时占据了大约30%的全天时间。

为了解决这个问题,你可以遵循以下建议:
1. 每工作一小时:
休息 5 分钟,如果休息不了这 5 分钟,就把它们留到下一个工作小时,并将累积的时间(在本例中为 10 分钟)留到下个工作小时。千万不要累积超过 10 分钟的休息时间;这样到一天结束的时候,你就会拖延工作,如果你把 7 个小时的工作时间留到一天结束时休息 35 分钟,你就不会看到休息的好处
。2. 当你休息 5 或 10 分钟时:
如果方便的话,一定要出去晒晒太阳。如果做不到,那就待在原地,找个安静的地方。
呼吸。这听起来很明显,但非常重要。进行 1 分钟的深呼吸。这并不难。
清空你的思绪。做些与你目前正在做的事情无关的事情。看视频、听歌、玩一会儿电子游戏,随便什么都可以。但休息时间不要想着工作。
做一些运动或伸展运动。你可以在网上找到很多这样的方法,并养成每天的习惯。
确保喝水或其他液体来保持健康和水分充足。
关键在于你必须照顾好自己的健康。如果你拥有健康的身心,你就能更好地完成任务,而不会感到疲惫或被日常问题压垮,从而成为一名更高效的程序员。

更加乐于接受,减少防御

作为程序员,我们往往会对自己的代码以及开发方式有些嫉妒。所以,当一些同事告诉我们代码有缺陷,或者可以用与现有代码不同的方式进行优化时,我们可能会感到很不舒服。结果,我们开始采取防御态度,而不是接受态度。

在我之前的工作中,我算是我负责领域的技术领导者,所以我所知道的一切,理论上来说,都是没问题的,没有人会告诉我其他的。我一直对自己的代码感到自豪,因为我确信它是完美的,或者近乎完美的。但当我加入 FullStackLabs 后,这一切都改变了。他们给我的第一份文件是一份文档,上面写着团队成员在代码合并前要进行审查。起初,我被这个事实吓到了,但我认为自己是个优秀的程序员,所以并没有太在意。真是个错误。

当我开始提交代码进行审查时,好几次都只是简单的错误:这里一个逗号,那里一个箭头函数。起初,我只是负责实现这些修改,什么都没问,感觉受到了攻击。直到有一天,我决定问问他们,我的代码和他们要求我修改的代码有什么区别。结果,他们进行了一次关于优化和标准化的简短讨论,让我明白了自己做错了什么。我感到羞愧,但同时也非常高兴,因为我学到了新的东西。我开始在一个新的领域崭露头角了。

所以,我的第二个建议是,要成为一个更高效的程序员,要采取接纳的态度,而不是防御的态度。如果你让自己从不同的人的角度看世界,你就能在他们知识的帮助下成长。永远不要想当然地认为自己无所不知,要捍卫自己的想法和解决方案,同时也要倾听他人的解决方案。在编程中,对于同一个问题,有无数种解决方案。

知道何时寻求帮助

当我们处理一个阻碍我们前进的特定问题时,我们往往会在寻找解决方案的同时对其进行大量思考,而没有意识到这会降低我们的程序员效率。

与其长时间(超过1小时)专注于一个小问题,不如向同事寻求帮助。这能更有效地增长你的知识,并提升你的沟通能力。现在,我们的同事并不总是能帮上忙,或者我们可能是唯一一个在研究某项技术的人。在这种情况下,最好停止处理这个问题,将注意力转移到其他具有相同优先级的功能上,稍后再继续处理。我们的大脑会在后台继续工作,我们可以从不同的角度重新审视这个问题。

不要炫耀

在我的职业生涯中,我遇到过各种各样的代码,有些令人印象深刻,但由于其复杂性而难以理解;有些则很简单,非常容易理解。但也有很多代码一开始很简单,但出于某种原因,除了满足程序员的自尊心之外,并不需要变得复杂。

我认为这是导致程序员效率低下,并损害周围人利益的因素之一。不知何故,每次我遇到这种过于复杂的代码,都与一个人的想法有关,他想用自己的地位或资历来证明自己,而他所做的只是编写一些本来很简单的代码,却不知何故被写成了只有他自己能理解和解释的“意大利面条”。

建议

我的建议是:保持代码简洁一致。如果上述角色离开公司,又有新的开发人员加入并添加/维护代码,那么代码的维护难度将远高于从一开始就保持代码简洁的情况。正如我的算法和离散数学老师曾经说过的:“优雅在于简洁,因为每个人都能理解你想要表达的意思。”

文章来源:https://dev.to/abdullahalhariri/secrets-about-highly-efficient-programmers-46ld
PREV
软件开发中的设计模式学习设计模式
NEXT
使用 ReactJS 快速开发 UI 的五大方法