韩顺平老师13个编程误区提醒的总结
1. 不注重基础,什么火就学什么
初学编程,一定要扎实基础
自己的总结:
万丈高楼地基起,学好基础,为以后的学习做充分的准备,这一点非常重要,不能一味的追求新技术,新技术大部分是对基础的总结和封装,比如框架,新的框架会屏蔽很多的细节,虽然从应用的角度来说,确实方便,如果仅仅是为了完成任务,那么学习应用的方法,不去深究底层细节,无可厚非,但是如果要理解底层原理,一定要把基础学好
2. 不要纠结编程语言
编程语言从逻辑和语法上来讲都是大同小异,在学精通1门编程语言后,再去学习别的编程语言可以触类旁通,在没有目标的情况下可以先学习Java语言
自己的总结:
编程重要的是思想,是拥有实现需求的思路,而且每个编程语言对应擅长的领域不同,需要明确自己的方向后,根据自己的实际情况制定目标,再去学习
3. 喜欢看,不喜欢动手
亲手写代码非常重要,刚开始的时候,不知道写什么,就把学习案例写一遍,后面自己想办法拓展,自己想添加什么功能,尝试去做
编程是一门做中学的学科,是在做的过程中学会的,而不是说,先理解了,知道了再去做,如果在做的过程中不理解,就多做几遍,如果写代码过程中出现错误,会报错,这是提升的好机会
自己的总结:
学习本质是模仿,只有在大量的练习和模仿,并且理解了核心思想后,自己独立创造才能顺利,否则连别人做过的东西都做不出来,还谈什么自己创新开发呢,举一个拍短视频的例子,短视频可能只有几秒,然后爆火,那是视频要素齐全,符合爆火的条件,如果符合爆火的条件,还不火,那就多做几条视频,总有一条会火的,同样的道理,多动手,可能效果不理想,但是努力绝不会白费,总有一天会出现量变产生质变的效果
4. 没有认识到听懂和会用是两回事
如果出现了,听懂老师的说法,但是不会做项目,说明缺少大量的练习
纸上得来终觉浅,绝知此事要躬行
要通过做题,做项目,并且深度思考
什么叫深度思考:做对了,要知道为什么做对了,做错了,要知道为什么做错了,并且下次不要再犯
自己的总结:
正常情况下,能听懂了老师的内容,说明老师把这个知识点说明白了,剩下的就是要通过大量的练习,将这个知识点原理深刻的印在脑子里,注意这里说的是知识点原理,而不是应用层面的api,就是说,知道自己要干什么,而不是去记忆api,api不要背,常用的api自然而然会记住,不熟悉的api,要知道去哪里找,主要是理解如何运用
5. 很少做笔记,没有画思维导图,没有将学习的知识转化为自己的知识
在学习过程中,要明白,学习的知识是老师的,不是自己的,要想办法把知识转化为自己的知识,最好是用自己的语言把知识总结下来
自己的总结:
就像我现在按照每条误区的顺序,逐个写自己的总结一样,一定要按照自己的理解,将老师传授的知识点转化为自己的知识点,不然的话就只是听过去了,然后假如别人再来问我,我知道个锤子,我只知道自己学过这个知识,那这个知识具体是啥内容啊?不知道,这不是浪费时间吗,既然学过了,也许会忘记,但是起码,这个东西是干什么的要能说出来,脑子里要有映像,可以像现在一样,对学习的内容进行总结
我个人推荐费曼学习法,什么是费曼学习法?简单说就是自己学习过后,进行总结,用最简单的话把事情说明白,最好是一个没有接触过的人也能听懂的程度
我是怎么做的呢?
可以自己心里想象一个人,他现在啥也不懂,纯纯萌新,我要把他教会,我只能用不出现任何专业名词的说法去教学
那我是如何知道我心中的那个人有没有听懂呢?
这取决于我是否能顺利的讲出来,如果能顺利的讲出来,并且我自己能清晰明白的知道整件事情的流程,那么我就认为我心中的那个人听懂了,如果有机会的话可以邀请一位朋友,看看能不能让那位朋友听懂,请朋友的方法比较直观,容易得到反馈
6. 喜欢死记硬背,不理解原理
基本的语法结构,需要死记硬背,但是涉及到功能的实现,算法设计模式,底层机制,优化效率等一定要理解,不能死记硬背,如果有一些知识无法理解,就先通过大量的练习,把知识点背下来,在实践中加深认知
自己的总结:
这一点我是真的有深刻的理解,我之所以会做这样的一篇总结,也是因为我犯了这个错误,我在学完Java基础课程后,趁热打铁,学习了数据结构和算法,当时还正儿八经了像做笔记一样把老师的总结抄下来,看起来像是自己的总结,其实屁用没有,过一段时间回看还是啥也看不懂,加上我记性很差,甚至都不愿意死记硬背,也不理解原理,这个现象其实上面第5点也是说的很明白了,但是真正让我理解这个坑是一件真实的事件
事件:
公司里面有2份文档,他们本应该是一模一样的,但是其中一个比另一个多了一页,我们检查了2份文档,第一页和最后一页的内容又是一样的,那么一定是中间的某页出现的偏差,导致这个原因的可能是我用的word,同事用的wps
怎样分析并解决这个问题?
如果您能看到这篇文章,并且了解数据结构和算法,我希望您能够暂停一下,先思考一下用哪个算法的思想就能解决这个问题,这非常简单,我当时发现这个问题后,仅用不到1分钟就确定了思路,并且开始了排查,2分钟之内找到了出错的那一页
简单说一下我是如何思考并解决的:
关键1:2份文档都是300多页,相差1页,比如一个是310页,一个是311页,他们下面都有页码,那么自然就能想到连续的数组
关键2:2份文档的头尾内容相同,我们可以理解为,2个数组,他们的长度差值为1,第0个元素和第.length-1个元素对应相同,也就是说 arr1.length-arr2.length取绝对值,结果为1, arr1[0] == arr2[0] 并且 arr1[arr1.length-1] == arr[arr2.length-1]
所以我们只要找到那个第一个出现错位的下标就可以了
为了方便理解,我画一个图

相信有朋友看到这个图之后一下子就能看出来,可以使用二分查找的思想解决
那我具体是怎么做的呢?
1. 同时打开2个文档,都翻到最中间一页,看下面的页码是否相同
2. 如果相同,说明错误出现在文档的后半部分,继续向后取一半,比如文档一共100页,我看2份文档的50页,内容一样,那就看2份文档的第75页内容是否相同,后面以此类推
3. 假如看到75页内容不一样,但是下面页码一样了,说明错误出现在了50-75这25页之间,那我就找50-75这25页的一半,50+12.5=62.5页,当然.5是不可能的,所以看62页
4. 如果2分文档的第62页相同,那么问题就出在63-75之间,如果不同,说明问题出在51-61页之间,以此类推,即可找出错误的那一页
这就是一个简单的算法的实际应用
7. 程序出错后,不是积极调错,而是逃避
出现错误不可怕,可怕的是没有积极面对错误,解决错误的心态和意识,遇到错误后积极的调试,找到错误,解决错误,是提升的好机会
自己的总结:
这一点倒是还行吧,我每次出问题,首先看错误提示信息,如果没有,就认真核对自己的代码和老师写的哪里不一样,实在找不到,打开弹幕,看看有没有朋友遇到和我一样的问题,或者是先把老师讲的内容看完,看看这里是不是老师留下的一个坑,用故意展示错误的教学方式来进行教学,这里提示几个常见的错误:
1.from不要写成form
2.工程路径名尽量复制,不要自己写
3.方法名要见名知义
8. 孤军奋战,闭门造车不愿意也不敢分享
在学习的过程中,肯定会遇到问题,不能让问题越积累越多,需要自己营造学习氛围,如果问题越来越多,但是不去解决,就会产生慢慢放弃的想法
初学编程,要敢于分享,敢于总结
自己的总结:
这也是我写这篇文档的理由之一,敢于分享,接受别人的指正
9. 学习没有重点和目标
学习编程,应该有一个明确的学习目标,一旦明白了自己需要什么,就知道了自己要学什么,要学习到什么程度,然后根据目标和方向指定一个明确的学习计划
自己的总结:
从自己的兴趣入手,只有知道自己想干什么,才能知道自己要做什么!!!这一点非常重要,我学习这么长时间,终于是明白了这一点
一开始没有目标,没想好自己到底想干什么,只是想进入it行业,混口饭吃,老板安排我做什么,就做什么,导致我啥都要学,却啥也学不好,于是我问自己,你有目标吗?你想干什么?
我的第一反应是:我想啥也不干,天天歇着,看看视频,打打游戏,一天就过去了
但是后来一想,就我这个水平,每次打游戏都打不过别人,与其在游戏里被折磨,为什么不去做游戏,去折磨别人呢?(开个玩笑)
10. 收藏夹塞满了,但是从来没有看过
学习资源在精,不在多,学习资源简化一下反而更有利自己的学习
自己的总结:
找到适合自己的学习方式和自己容易接受的老师,以这个老师为主,其他老师为辅,进行学习
11. 学习编程和性别无关
职场中,女性会有劣势,需要长远的职业规划
自己的总结:
知道自己想干啥之后学就完事了!加油!奥里给!
12. 专业不对口,不适合学编程
编程本质也是一门技术,和其他专业么有太大的差别,只要逻辑思维正常,就可以学编程,转行做it,后来成功的人很多
13. 数学不好,不适合编程
在实际开发中,确实会遇到一些数学相关的内容,但是对于大部分程序员而言,是使用一个别人已经写好的模块,去应用,而不是创造
自己的总结:
我学了这么长时间,没遇到数学需求较高的业务场景(我太菜了)
14. 小结
学习编程是一个过程,要有好的学习方法,而且要坚持,明确学习目标和方向,制定明确的学习计划,每天进步一点点
都会学好,都会学会,只要有一颗坚持的心
14. 后记
我第一次接触韩老师是在21年3月份左右,映像当中那个时候韩老师个人b站账号的零基础学Java课程只有四十几万的播放量,现在20220514已经有了478万播放量了,那个时候我也看过了13个坑这个视频,但是当时听了,却没有谨遵教诲,也没有做关于这非常重要的一期的思路整理和笔记,或者说没有坚持照做,因为我找韩老师拿到了笔记之后,自己就不做了,现在想想挺后悔的,现在回头再整理这一份迟到了1年的笔记,百感交集,不禁感叹温故真的能知新