“学了四年的计算机课程,我们班大多数同学都不知道该干什么,能干什么,感觉好像什么都学了,但是又什么都干不来!”
“面试的时候,很多单位问做过什么项目,能干什么,我们都回答不上来,就连很多问题,我们都不知道。”
……
这些都是很多计算机专业毕业后学生们的感想,但是这几乎成为了一种大学 IT 行业的毛病,也是很多学编程语言以后的人的想法。
就拿 Java 这个来说,很多人拿着书在学习的时候,是不是都一页一页的顺着翻书看的?遇到问题都卡住了,要不然就去问老师,麻烦点就问其他人,但又感觉不好意思,再不然就失去信心,干脆放弃了。有些时候,看书觉得懂了,一上机操作啥都不知道了……
其实上面说的这些这些都是误区!学编程,一定要动手,遇到 bug 了,就自己去查,如果连这点都不想做,那我只能劝你别学了。
程序员,有些时候产生的 bug 搜遍全网都找不到解决方法,但是还是要自己去解决;如果就连一个随便在网上一搜索就出来的了 bug 都不愿意去查,那还何谈学习编程?
你要知道你是新手,在学习过程中肯定会遇到非常多的麻烦,但是,所有人都是从新手走过来的。你遇到的问题,你的前辈们多多少少都遇到过,所以,除了学会查找资料以外,大胆的提问,有些时候也会有一些意想不到的收获。
比如,你的程序出现了一个 bug,你在网上找到了解决方法,但是别人用到了一个你没学过的知识点解决了你的问题,你该怎么办?学编程,一页一页慢慢的学,没用!哪里想学,哪里不会,看目录,直接去读。
“没有学不好的语言,只有不努力的人!”我其实一直不太喜欢这句话。学习,尤其是编程语言,是有技巧的。如果什么都去学,而不是精学工作和面试中的知识点,那不仅会造成学习效率相当低下,而且还会迷失在知识的海洋中。结果是,大家投入了大量的时间,也学到了不少的知识点,但是无法把学到的知识点整理成升职加薪的 Java 知识体系,说白了,也就是白学了。
所以说,学编程,其实就是在提升自己的自学能力,动手能力,逻辑能力,还有解决问题的能力。无论你是学习哪种语言,这些方法都大同小异:
第一点:多动手,多动脑,多实践。
没有几万行的代码,没有经常敲键盘的努力,你就不要羡慕别人打代码有多快,多熟练。别老是想着我看书把这个完全看懂了,甚至都能背下来了,我就可以过了!其实不然,你会发现,你一上机操作,又是一堆错误。
有些时候,敲一两次代码,比看十次书还有用!要不然,你认为你刚开始学 Java 编程打代码的速度就能像那些程序员一样打的很顺很快,对于别人打了那么多年代码的程序员来说,也是有点太不公平了吧,对吧?而且,一定是打代码,不是照着敲代码!照着敲代码,你就不是程序员了,而是打字员了。在写下每一行代码之前,都要想一想为什么,怎么来的。我保证,随着时间的积累,(1+0.01)的 365 次方是 37.78,总有一天,量变总会形成质变。
第二点:不急躁,不拒绝错误。
不要急躁,遇到技术问题,必须冷静对待,不能让思维混乱,保持清醒的头脑才能分析和解决各种问题。
永远也不要拒绝自己的错误,很多新手一开始一敲代码,运行框里面就弹出来了十几行报错。用开玩笑的话说,在最开始学编程的那几个月里面,你都不敢按下你自己程序的启动运行按钮。
但是事实确实如此,作为一名新手,你确实会犯下很多错误,诸如文件创建失败,没有写出函数,或者没配置环境变量等等……但是不要怕,直接把报错的提示复制粘贴到百度,一搜索就出来了,你会发现,相对于正确的程序,你的收获明显会更多。错误即是财富,请记住。
第三点:学习一定要学会取大舍小。
什么叫取大舍小呢?舍本逐末知道吧?他的反义词。比如说我举一个例子:有很多时候我们会把一个组件的引用作为一个类的成员变量,而不是在其起作用的函数中去定义。
有些新手就开始疑惑了,既然都一样,那为什么不放在函数中呢?其实这些问题到后面你自然就知道了,是因为作用域的问题所在。开始学编程或者入门后,不要去纠结太多你目前无法理解的细枝末节,否则会让你的学习进度还是效率,甚至是信心,都会大打折扣。抓住需要掌握的,有些细节,到了后面你慢慢就会知道了。
第四点:看一本书尽量不要从头向后一页一页的看。
编程这种课程,确实有点不一样。因为当你在学习的时候,那是一个又一个的知识点,但是在我们开发时,做项目的时候,要的是一张知识网络。这也就是面试的时候,曾经的项目经验那么受重视的原因所在。
有些 Java 老手说,要把一个小白变成老油条咋办?简单,丢进项目组里面混一段时间就好了。当你出来后,你会发现你所学习的 Java 不再是很多零散的知识点了,而是一个体系。
到这个时候,你也就算有了 Java 高阶的学习基础了。那么对于我们一般的初学者来说,能够形成一张体系,也就至关重要,甚至说对以后搞开发,找工作来说必不可少。所以这种意识要从学习的初期就要开始培养。
初学编程时,遇到了后面不熟悉的知识点,没关系,只要想看,就去看!在网上查找自己遇到的 Bug 的时候,看见别人用了一种自己没学过的东西解决了,如果想了解,那就去看那部分知识!
甚至你在学习新知识的时候,可以尝试把新老知识结合一下,当你成功了以后,这种点点滴滴的成就感,也会督促你继续前进。所以,看一本书,不要顺着看,这不是编程的学习方法所在!
第五点:多阅读别人的优秀代码,永远不要抵触学习新知识。
编程所属的计算机科学和其他科学界都差不多,但有个特点就是计算机科学界的前沿科学发展的太快了。所以,多去读一读别人的代码,不要抵触新知识,是学习计算机科学,也亦是学习编程的一条相对来说的“捷径”。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/23111.html