Paul Graham Essays

返回

在脑海中构建程序

发布于 2007-01-01

原文:https://www.paulgraham.com/head.html

2007 年 8 月

一个优秀的程序员在专注于自己的代码时,能够像数学家解决问题一样将其牢记在心中。数学家不会通过纸上的计算来回答问题,而是更多地依靠头脑:他们试图充分理解问题空间,以便能够像走进童年家中的记忆一样走进问题。在最佳状态下,编程也是如此。你将整个程序牢记在脑海中,并可以随心所欲地操纵它。

这在项目开始阶段尤为重要,因为最初最重要的是能够改变你正在做的事情。不仅仅是用不同的方式解决问题,还要改变你正在解决的问题。

你的代码是你对正在探索的问题的理解。所以只有当你的代码在脑海中时,你才真正理解这个问题。

将一个程序放入你的脑海中并不容易。如果你离开一个项目几个月,当你回到它时,可能需要几天才能真正理解它。即使当你积极地工作在一个程序上时,每天开始工作时,可能需要半个小时才能加载到你的脑海中。而这还是在最好的情况下。在典型的办公条件下工作的普通程序员从不进入这种模式。或者更戏剧化地说,典型的在典型办公条件下工作的普通程序员从不真正理解他们正在解决的问题。

即使最优秀的程序员也并不总是将他们正在处理的整个程序加载到脑海中。但有一些方法可以帮助你:

  1. 避免分心。 分心对许多类型的工作都不利,但对于编程来说尤为不利,因为程序员倾向于操作他们能处理的细节极限。
  2. 连续工作。 由于每次开始工作都有固定成本,因此在较长的工作时间内工作比许多短时间内的工作更有效率。
  3. 使用简洁的语言。 更强大的编程语言可以使程序更短。程序员似乎至少部分地以编写程序的语言来思考程序。语言越简洁,程序就越短,也越容易加载和保留在你的脑海中。
  4. 不断重写你的程序。 经常重写程序会产生更清晰的设计。
  5. 编写可重读的代码。 所有程序员都知道编写可读的代码是好的。但你自己是最重要的读者。
  6. 小组合作。 当你在脑海中操作一个程序时,你的视野往往停留在你拥有的代码边缘。
  7. 不要让多人编辑同一段代码。 你永远不会像了解自己的代码那样了解别人的代码。
最后编辑于 2024-04-15