不好的方式
- 尝试一种解决方案
- 如果不成功,再换个方案
- 如果还是不行,继续第2步
最佳方式
a. 有一个框架
b. 不断练习
新手常犯的最大的错误就是总关注语法学习而不是如何解决问题
面对问题的步骤(框架)
1. 理解(Understand)
写下问题,画草图,或者向别人解释问题。(参考小黄鸭调试法)
2. 计划(Plan)
不要一开始就直接hack,要花时间去根据现有信息来分析问题。比如:输入X,接下来需要哪些步骤才能获得Y
3. 分解(Divide)
不要一开始就想着解决一个大问题。而是应该把它划分成多个子问题,然后一个一个的从最简单开始解决。
4. 困惑(Stuck)
如果还是无法解决子问题,深呼吸,承认失败。
优秀的程序员更在意bug而不是沮丧。
面对悲剧的三种解药:
- debug: 重新一步一步尝试,看看哪里出错了
- reassess: 后退一步,换个角度看问题。或者推倒之前的所有,换个方式重新开始。
- research: 就是Google,看看别人怎么做的
练习
练习、练习、练习,只有花费大量时间来练习解决大量的问题,你才能在碰到问题时,得意地来一句:放着、我来(这个问题其实这样这样就可以了)。
去哪里练习呢?作者推荐的coderbyte,一天一个。