在学习编程的过程中,我遇到过许多弯路。有些弯路很短,所以我可以走进去就马上出来,获得一些经验是一件好事。有些弯路是五连发夹弯,哪怕是老程序猿都会翻车。但是有些弯路甚至更可怕。他们的前半段是直的,但是下半段来了个大转弯。你可能以为前方一马平川,实际上却南辕北辙浑然不知。
编程中常见的一种弯路就是学生思维
01记笔记Vs写技术教程
在我们十几年的求学生涯中,关于知识的获取基本上都在执行以下步骤:学习课本上给的教程案例,练习课后的配套习题,如此反复,直到通过考试。
很多学生思维的人会把这种学习方式映射到编程上:学习基础语法,练习几个小的教学案例,如此反复,直到认为学会编程。
在学习编程的过程中,读书时记笔记的习惯变成了抄代码,变量名、if语句是否换行、函数名完完全全照搬书中案例。
不可否认,在初期抄代码是不错的一个入门方式,每次都可以成功的运行代码极大地增进了学编程的信心,但一直抄很明显不是理智的行为,需要调整为写技术教程。
当你自己去写技术教程的时候,你必然会重新回顾一下整个流程,甚至会亲自再操作一遍,很容易发现之前学习过程中的疏漏点,为了弄明白它,你会查阅相关的资料,知识点得到了补充。
其次,由于你写的技术教程是发布于网上,为了让更多人看明白、更多人认可,肯定会尽可能的讲清楚,在讲清楚的过程中,对于所学的知识更加全方位的了解。
02害怕未知Vs接受未知
学生时代大家总是会如饥似渴的学习,想尽办法把所有难题都弄明白,学生害怕的是未知,害怕一切不确定的问题,不知道问题是哪个范围,一旦问题找不到方向,总是会陷入焦虑的状态。
由于所学内容被限定了范围,所以总能通过书本、同学、老师、互联网找到明确的答案,即使无法弄明白也明确知道这个知识点属于哪个明确的范围,只是由于自己的问题做不出来而已。
但编程不同,很多编程问题无解的,无人知晓怎么去解决。
为了学好编程,我们必须忍受一定的未知。
未知是永远存在的,这是一个客观规律现实,不因人的意志而改变,和客观现实做斗争是无效的行为。
其次,有些未知的事情就是无解,把时间精力投入到无解的事情上属于浪费,有些未知的事情是因为当下的知识贮备不足以解决,需要忍受这一时的位置、咬咬牙坚持学习后面的内容才能得出答案。
03按部就班Vs不断回溯
课本上的内容都按部就班阶梯式上升,如果没有学会前面的A内容,后面的B内容根本搞不懂。
由于未知的存在,学习编程过程中总是有一些问题会拦住我们,我们需要做的是先记录它,然后搁置在一旁,继续前行,继续学习新知识、练习新技能、接触新领域,不断的积累,不断的成长,以后时不时回溯一番,把它拿出来重新审视,说不定在学到某个新知识、练习某个新技能、接触某个新领域的时刻突然豁然开朗:哦,原来是这么一回事。
如果你对编程感兴趣,需要获得专业的帮助,可以私信我,可以帮助你提供专业的学习路线和建议。