程序员如何高效地摆脱编程困境

每个人学习编程时都会遇到困难,因此作为程序员,需要学习的最重要的技能之一是如何高效地摆脱困境。下面简要地介绍几种方法,以帮助我们摆脱编程困境。

1 第一步

陷入困境后,首先需要判断形势。我们必须能够明确地回答如下三个问题,才能够从他人那里获得帮助。

⑴你想要做什么?

⑵你已尝试哪些方式?

⑶结果如何?

对于以上三个问题,答案应尽可能具体。

对于第一个问题,像“我要在我的Windows 10计算机上安装最新版本的Python 3”这样明确的陈述足够详细,让Python社区的其他人员能够施以援手;而像“我要安装Python”这样的陈述没有提供足够的信息,别人无法提供太多的帮助。

对于第二个问题,我们的答案应提供足够多的细节,这样别人就不会建议我们去重复已经尝试过的方式:相比于“我访问Python网站,并下载了一个安装程序”,“我访http://python.org/downloads/ ,并单击Python 3的Download按钮,再运行这个安装程序”提供的信息更详细。

对于最后一个问题,知道准确的错误消息对在线搜索解决方案或寻求帮助很有用。

有时候,通过回答这三个问题,我们会发现遗漏了什么,从而无需再做其他的事情就能摆脱困境。程序员甚至给这种情形提供了一个名称,称之为橡皮鸭子调试法(参照于一个来自《程序员修炼之道》书中的一个故事)。如果我们向一只橡皮鸭子(或任何无生命的东西)清楚地阐述自己的处境,并向它提出具体的问题,我们常常能够回答这个问题。有些编程公司甚至在办公室放置一个橡皮鸭子,旨在鼓励程序员“与这只鸭子交流”。

 类似于橡皮鸭子调试法,有一种现象叫做ConeofAnswers,这是一个常见的现象。我们的朋友跑来问我们一个问题,但是当他自己把问题说完,或者说到一半的时候就想出了答案走了,留下一脸茫然的我们。是的,这个时候我们就起到了那只橡皮鸭子的作用。
  相似的概念还有不少,列如自白调试、纸板程序员或程序员的假人、想出脑外等等。总的来说,在我们试图表述自己的想法的过程中,自然地在促使自己去整理思路,重新考虑问题。

1.1再试试

只需回过头去重新来一次,就足以解决很多问题。假设我们正编写一个for循环,可能遗漏了某种简单的东西,如少了一个冒号。再试一次可能就会帮助

我们避免重复同样的错误。

1.2 歇一会儿

如果我们很长时间内一直在试图解决同一个问题,那么休息一会儿实际上是我们可采取的最佳战术。长时间从事一个任务时,我们可能变得一根筋,脑子里想的都是一个解决方案。我们对所做的假设往往会视而不见,而休息一会儿有助于我们从不同的角度看问题。不用休息很长时间,只需让我们能够摆脱当前的思维方式就行。如果我们坐了很长时间,起来做做运动。溜达溜达或去外面待一会儿,也可以喝杯水,或者吃点清淡而健康的零食。

如果我们心情沮丧,也许该将工作放到一边,整天都不考虑了。晚上睡个好觉后,常常会发现问题并不是那么难解决。

2.在线搜索

很可能有人以前遇到过我们目前面临的问题,并在网上发表了相关的文章。良好的搜索技能和具体的关键字有助于我们找到现有的资源,供我们用来解决当前面临的问题。例如,如果我们无法在使用Windows 10的计算机上安装Python 3,那么搜索“python 3 windows 10”可能会让你马上找到解决问题的方案。

搜索计算机显示的错误消息也极有帮助。例如,假设我们试图启动Python终端会话时出现了如下错误消息:

> python

'python' is not recognized as an internal or external command >

通过搜索完整的错误消息“python is not recognized as an internal or external command ”,也许能得到不错的建议。

当我们搜索与编程相关的主题时并打算接受博客文章提供的建议前,应大致浏览一下前几个评论,看看其他人的反应。如果文章没有任何评论,请对其持保留态度——它提供的建议可能还没有人验证过。

猜你喜欢

转载自blog.csdn.net/qq_34361514/article/details/83899899