想写程序吗?远离你的计算机!

我最近想明白了一些事情。最好的写程序的地方不是在你的计算机前,不是使用你的编译器、IDE或其它一些工具。这最好的地方是一个远离这些工具的场所 —— 是某个能让你认真的思考的地方。对于一个你很熟悉的编程语言,你很容易把你脑子里已经构思好的程序转换成编译器/解释器可以编译/解释的程序 —— 难就难在如何在脑子里先把程序编好。

有一天我乘火车旅行。我带了笔记本,但没有网络。不幸的是,我使用的是一种商业编程语言(IDL,真不巧),这种语言需要使用我大学网站上的许可证。因为不能连上互联网,我拿不到许可证,于是我的编译器和IDE就跑不起来。你可能会喜欢使用一个需要昂贵的许可证的商业编程语言,但它的确使我不能在编辑器里写任何的代码。而你猜这么着 … 这让我开始思考!

我想这篇博客正好印证了Does Visual Studio rot the mind?这篇博客的内容,它里面说道:

我从我的第一个老板那里学到的最大的一个教训是:“当你的程序运行异常时,不要使用debug工具,用你的大脑。”

这就是远离电脑后会迫使你去做的事。通常你很容易进入这样一种编程习惯:

  1. 写一些程序(乱糟糟的)
  2. 编译,运行
  3. 使用简单的测试用例进行测试
  4. 发现有问题
  5. 小改一下程序,也许能解决这个问题
  6. 重复 …

这当然会导致程序最终乱糟糟的,无法阅读理解,很有可能问题多多,没有很好的测试。

远离计算机能迫使你在大脑里周全的思考所有的问题 —— 这跟你抱着计算机编译、运行你的程序相比可能会花更长的时间(至少对于小程序是这样)。可是,这样做后,你就不会去一点一点的改动程序、一遍遍试着运行它们了,你是真正的思考这些代码是做什么的。在那天、在火车上之前,我还从没有在纸上规划过任何的程序。

而从此之后我努力在写程序之前会把思路画在纸上,思考它,一步一步的用代码实现,做出高质量的,高效的,没有问题的程序,多去思考,最后才在编译器上运行。程序是最后才从纸上拷贝到编译器里。

任务完成的很好 —— 我自认为,希望这是一个有用的建议。

[英文原文:Want to write some code? Get away from your computer! ]

分享这篇文章:

23 Responses to 想写程序吗?远离你的计算机!

  1. tongDou says:

    “when your code doesn’t behave as expected, don’t use the debugger, think.”,right?

  2. 傲世狂少 says:

    思考清楚在动手吧

  3. Pea-brained Turtle says:

    More thinking before doing……

  4. cnxiaoma says:

    以前的程序员都是这样,没有什么Debug,甚至没有什么IDE。纸头上下写代码,查指令表翻译成二进制。然后在纸带上打洞,将纸带输入计算机,查看结果。如果有异常需要修改程序,拿出剪刀和浆糊, Cut&Paste。

  5. appletree says:

    很多时候不动手,光靠想,也是想不清楚的。

  6. Levi says:

    我比较同意这个观点,好的程序员90%的时间是在思考问题的解决方式.

  7. 对呀. 使用具有形象思维的右脑. 现代科学称作”Rich Mode”.

  8. 风随影尘 says:

    Use Your Head!Believe your self!And you’ll win!

  9. aschord says:

    很精典的一句话:“当你的程序运行异常时,不要使用debug工具,用你的大脑。”

  10. vicky says:

    这个真的要学一下….

  11. 想不通 says:

    不要动态调试 要静态分析

  12. redpig 对这篇文章的反应是好文
  13. 1  这篇文章, 并对这篇文章的反应是垃圾
  14. 万真 对这篇文章的反应是赞一个
  15. 吴莎莎 says:

    I agree with his idea.

  16. 肖高翔 对这篇文章的反应是赞一个
  17. 111 对这篇文章的反应是赞一个
  18. 张昌伟 对这篇文章的反应是赞一个
  19. 刘维强 对这篇文章的反应是赞一个
  20. 李志团 对这篇文章的反应是飘过~

发表评论

电子邮件地址不会被公开。 必填项已用*标注