11. “忘记关闭结束括号带来的麻烦” 你采取的所有步骤都是调试。向前两步,退回一步,或者向前更多。你会感觉花很多时间盯着代码,只为查找一些语法错误或者是变量的作用域,最终却只找到一个失踪的括号,这是一种奇怪的感觉。所有的时间都花费在了一个小小的语法错误上。在同一时间会感觉自己即是一个天才又是一个傻子。 12. “停下来,喝一杯咖啡” 有时候你需要的是起身离开显示器,在键盘上工作几个小时后。这有助于打破惯例。大多数的健康指南建议休息30-60分钟。但这一切都取决于你的需要,如果让你从编程过程中中断会使你苦恼,那最好还是不要中断。 13.“我应该把这个项目先放一放,稍后再处理它。”工作间歇停顿的一种可选方式是远离你的项目,而不仅仅是你的电脑。也许存在另外一个需要你完成的工作,那么就过去把那项工作挑出来瞧一瞧吧。相比于你已经心迷神乱的死盯着要解决的另外一个问题而言,这也许是对时间和资源的一种更加好的分配方式。 14."我想古典音乐兴许能激发我的编程潜能"有一种观点认为古典音乐能够在作物生命的早期阶段促进其生长。我个人则偏爱于古典音乐繁富的附注和错综复杂的音乐理论。爵士,钢琴,大型的乐队,优雅的音乐在世界各地的人文中都占有一席之地。那么在编程的时候听听轻妙的音乐会不会也能让你更精于调试之道呢?或许不会,但愿它不然让你更加的笨拙。 15.“也许现在正是验证Ballmer峰值理论的好时机”我想很多读者都知道 Ballmer峰值,它由一个特殊的xkcd漫画创造而来。简而言之,这一理论表明程序员的编码能力会在消费了特定量的酒精之后达到一个顶峰。这源起于Steve Ballmer的古怪动作滑稽的像个酒鬼写出了随笔,尽管这有某些讽刺意味,因为Ballmer在微软从来都不是一个真正的程序员。试想我们将不得不等待另外一个人来为这一理论进行一次试运行。 16."是不是有人正在摆弄我的代码"这听起来像是妄想和偏执,但有时你只是猜想谁在你正忙着睡觉的时候挖了这个坑。遍览过去几周或者几个月的项目能够给你留下一种病态的感觉。有时候你将会发现你这从来都不记得是自己留下的坑——尽管上个星期你都捣腾过这个项目!我发了疯似得把它写下来,但是你从来不知道... 17.“我不知道这意味着什么。“你能遇到的最糟糕的情况就是看一看代码,完全不知道所以然。这可能来自于你自己的项目,也可能是其他什么人的项目,但都是同样的问题。现在你不得不去决定是否值得花更多的时间寻找替代方案,或者剖析代码以了解其工作原理。 18.”那段错误消息我需要查查Google才行“多年PHP的工作经历过后,我不得不承认Google是我在调试问题时的最好伙伴。Objective-C、C++、 Java、Python和其他主流的语言的境况绝对都是相同的。错误消息尝试能对程序员有所帮助,但是除非你对不同的代码意味着什么牢记于心,否则它读起来则更加像是被翻译过的计算机语言。谢天谢天线上有那么多的帮助支持,而我们只需决定这些错误消息真正确切的意义。 19.”我应该停下来,把它放上一天...但是我真心想把它弄出来啊!“我们都知道那种在你想要退出时极度沮丧的感觉,但只是感觉上像是放弃并不是正确的选择。你想要不断的推进,并在调试中尝试新的解决方案。但是如那最终证明是浪费了另外一个小时呢?我对这种境况并不陌生,它可是非常令人沮丧的。 20.”噢亲爱的,为啥我不写下任何注释呢?“如果涉及到更加基础的HTML/CSS/JS时,并不常常是要留下注释的。但是更加复杂的脚本和程序则需要某些形式的组织结构,以便你在几个月之后,或者甚至是十多年之后再来重温这些东西。有时候你会忘记对函数和它们的参数、输出形式和其它重要的数据加上注释。这无疑将会导致在bug开始出现而你不得不调试整个脚本以找出解决方案的时候陷入迷途。那时候你就会抱怨如果仅仅有一些有用的注释该多好。 |