在知乎了解到的一位前辈关于编程思想方向的概述,感觉很不错,也是我觉得该学习的一种学习方式

什么是编程思维?

思考问题的方式,方向,解决问题的方法,也就是说应该从哪里入手,从哪里着手去解决问题。每个人都是从零基础开始接触编程的,很多技术大牛总结了很多经验、解决问题的方式。而现在作为一个编程初学者,我们不需要重新造轮子。我们只需要跟随前辈们脚步,避免重复去走他们已经走过的弯路,也可以说我们现在做的一切都是站在巨人的肩膀来进行的。学习前辈们的经验和解决问题的方式,然后结合自身来解决自己的问题,最终融会贯通为自己所用。

编程思维是培养出来的

建议大家,解决问题的时候,首先要把问题分解。大化小,很多小问题已经有了非常成熟的解决方案,搜索引擎可以解决大部分问题,我们直接拿来用就可以了,并且记住这种解决问题的方案。而剩下解决不了的小问题,我们在进行针对性解决,每一个小问题解决后,一整块大问题就随之解决。编程思维的训练就是要学习成熟的解决问题的方法:比如if 语句用来做分支判断,循环用来解决反复运算的问题。穷举法、递推、递归、排序、回溯等等(如果需要当专业程序员,需要学习数据结构和算法,设计模式等等,需要学的东西很多很多。但首先要解决的一个问题是自己能写代码解决一般问题。)训练函数抽象,类抽象解决问题。如对有序数组,查找特定数值,没有经过训练,初学者,直接用循环遍历。如果经过二分法算法的训练,下次碰到这样的问题,就用二分法求解。

做习题,要像开发项目的流程一样

(需求->需求分析->设计->编码->测试->交付等)

拿到一个习题,还没有进行分析,就马上敲代码,这个学习方式,是不好的学习方式。

首先分析题目再设计,用哪种数据类型(数据结构)来组织或保存数据,用何种算法来计算效率最高,用面向过程,还是面向对象的编程范式,还是用函数式编程等等。设计后,再编写代码,最后写测试。

如何才能逐渐养成良好的编程思维思路

只有先经过训练常见的算法,分解问题,会做需求分析,慢慢训练,才会养成自己的思路。没有人一出生会编程,只有经过训练,才会学会编程。很多牛逼程序员用vim,敲的啪啪响,一会儿一屏幕代码,为啥那么熟练使用vim,习惯成自然。当你训练多了以后,学会一定的套路(解决问题的方法),养成独立思考的习惯,假以时日,自然就有思路了。养成独立思考的习惯,养成切分问题,养成大问题化解小问题,养成套用学过的算法,才会有思路。简单的判断、循环都不会写,就想玩django,何来的思路?万丈高楼从地起,希望大家脚踏实地实地的从基础训练起,先达到独立写代码解决一般的问题,再谈项目。见过盲目上号称牛逼项目的培训班出来的程序员,没有学会独立写代码解决一般的问题的能力,开发项目时如狗咬刺猬无从下手。

作者:正等正觉
链接:https://www.zhihu/question/19831473/answer/715008707
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

更多推荐

编程思想该如何养成,又该如何