如何像程序员一样去思考

如何像程序员一样去思考

如果你对编程感兴趣,你可能以前看过这句话:

“这个国家的每个人都应该学习编程计算机,因为它教你思考。” —史蒂夫·乔布斯

你可能还想知道,像程序员一样思考究竟意味着什么?是怎么做到的?

从本质上讲, 这一切都是为了更有效地解决问题。

为什么这很重要?
首先我们都有问题,无论大或小。我们应该如何处理它们?

如果你拥有一个系统,它就能从头到尾的来帮助你,否则“随机解决”就会是你解决问题的方式。

这是我开始编程时所做的:

  • 1.尝试解决方案。

  • 2.如果这不起作用,尝试另一个。

  • 3.如果这不起作用,重复第 2 步,直到走运为止。

有时候会很走运,但这是解决问题最浪费时间的一个方法。

所以,当我们遇到一个新问题时,应该这样做:

1.了解

你要确切地知道被问到什么。大多数难题之所以难,是因为你不了解它们。

当你能用简单的语言解释这个问题时,你可能就会真正地理解它。

当你被困在一个问题上的时候,一旦你开始解释它,你就可能会立即看到以前没有看到的逻辑漏洞。

大多数程序员都知道这种感觉。

这就是为什么你应该写下你的问题,画一个图表,或者告诉其他人。

“如果你不能用简单的语言来解释一件事,你就不会理解它。” — 理查德·费曼

2.计划

不要在没有计划的情况下直接解决问题(糊里糊涂地解决问题),你需要计划你的解决方案。

如果你不能写下确切的步骤,那么没有什么人可以去帮助你。

3.划分

注意。这是最重要的一步,不要试图一次性地解决一个大问题,你会哭的。

相反,将大问题分解为子问题,这些子问题更容易解决。然后,逐个解决每个子问题,从最简单的开始。最简单意味着你知道答案或更接近该答案。

一旦你解决了所有子问题,可能你就会得到原始问题的解决方案,恭喜!

将问题减少到您知道如何解决并编写解决方案的程度。然后稍微扩展问题并重写解决方案以匹配,并继续前进,直到你回到你开始的地方。” — 安东·斯普劳尔

4.卡住了?

到现在为止,你可能正坐在那里想,这很酷,但是如果我被卡住了,甚至无法解决子问题怎么办??

首先,深呼吸。其次,这是一件很平常的事情,别担心,这会发生在每个人身上,不同之处在于,最好的程序员在面对不同的错误时,可能会更加好奇而不是恼火。

事实上,面对某些解决不了的”BUG“时,你可以尝试以下三件事:

调试:逐步通过您的解决方案尝试找出哪里出错了,程序员称之为Debug。

重新评估:退后一步。换个角度看问题,有没有什么更简单、更通用的方法?

研究:不管你有什么问题,可能有人已经解决了,你需要找到那个解决方案。事实上,即使你解决了问题,也要这样做(你可以从其他人的解决方案中学到很多东西)。

不要为大问题不断的去寻找解决方案,那只是在浪费时间,你只需要寻找子问题的解决方案。

5.实践

勇敢去实践吧 ~

或许你可以在我这找到你想要的:

https://github.com/Tengxu666/LearnPython

十分钟带你了解Python

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wxlo0.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值