(如数据结构算法题)编程不是难在处理问题的思路,而在用代码将思路描述出来。

初学编程总觉得好简单,不就是加减乘除,或者什么,思路太简单了,就这样这样做就可以了,代码就不用写了,反正这么简单。

其实难就难在,如何用代码这种语言将你的思路书写下来。

写代码会受到很多的限制,你想要这样干,但你要如何让机器这样干。

  编程所要做的唯一一件事就是:拆分。

  拆分一整个件事成为一个个步骤---->流程图。

  拆分流程图中每一个步骤成为更详细的、具体的----->一条条代码。

  所以流程图是人脑中的大逻辑框架,不画出这个大框架,则会在更细节的代码中迷失。

由于拆分出来的一个个细节步骤(每条代码)太过于细碎,人很容易犯错,有时候很容易想当然,于是就会跳过或略过一些步骤,导致机器执行not as expected. 

思考的时候就要把每个细节都拆分出来,想好每一步细节之后,每个细节要与代码对应好。

像C这种面向过程的语言,有时候调试经常是调整一些代码的先后执行顺序,代码就正常运行了,这就是在思考细节的时候想当然造成的,没思考清楚就跑去写代码,导致代码的逻辑越来越混乱。

依靠调试来解决问题是很不好的习惯,会给你的思维漏洞提供借口,你思维的缜密性难以提高,you will always take your mistakes for granted,你想反正还有调试呢怕什么,但是调试的效果远不如你一次吧框架想清楚,不会把代码逻辑搞得乱七八糟。

扫描二维码关注公众号,回复: 3551756 查看本文章

  

猜你喜欢

转载自www.cnblogs.com/aristocracy/p/9780688.html