我最近才意识到,如果你在电脑前,有编译器、IDE、工具等等,你是写不出好的代码的。编程的最佳场所是——远离你的工具——在一个你可以正确思考并有条不紊地编写代码的地方。一般来说,对于一门你不熟悉的编程语言,在你的脑机中翻译程序甚至和用编译器编译(用解释器解释)一样简单。甚至,你想出的程序可能比计算机更复杂、更酷。有一次,我在火车上旅行。我带了一台笔记本电脑,但没有互联网。不幸的是,我使用的是商业编程语言(IDL),它需要站点的许可。但是没有网络,就意味着我得不到网站的授权,如果得不到网站的授权,就意味着我根本无法运行编译器和IDE。我的天啊!IDL的商业许可证不仅昂贵,而且它的编译器也限制了我在自己的编辑器上编写代码。这种破烂的编程语言,爱它的人都能用!但我想说的是,这件事给了我启发。我记得在某处看到过这样的帖子,总结出来的中心思想是:我从我的第一个老板那里学到的最好的教训之一是:当你的代码没有按预期运行时,不要总是依赖调试器,尝试为你自己想想。但是因为编译器的原因,很少有人会这么做。这种心态很好理解,也很正常。我们一般的编码流程是:1)写代码,即使写得不好2)编译后执行代码3)用一个简单的案例测试4)发现不行5)做一个小改动,看看是否有问题可以解决6)重复这个过程5)hack得到的代码很有可能bug百出,不好测试,然后程序员自己就无从下手了。离开你的电脑迫使你首先在自己的头脑中完成它——这当然比在你的电脑上编译和运行代码需要更长的时间。然而,你不去想——对代码做一个小修改然后运行——这种愚蠢的事情,你去想用哪段代码来执行什么。也是那天在火车上,我意识到自从我通过计算机A-Level考试后,我没有在纸上写过一行代码。有一次我写代码的时候,我想看看我能不能离开电脑写代码。我先搞出一段基本没有bug的高质量代码,然后写在纸上,想着有没有需要改正的地方,然后抄下来。跑到电脑前想想有没有问题,最后在编译器上编译。而我从paper上抄了过去的代码,虽然有一个图像分割的程序涉及到很多递归,但是奇迹般的,我一次pass就成功了!这种感觉真的很棒。***,希望我的建议对你有用!翻译链接:http://news.html5tricks.com/code-better-get-away-from-pc.html英文原文:Wanttowritesomecode?远离你的电脑!
