一、背景
正好看到CSDN的创作活动,我也随意分享一下。我是从事嵌入式软件方向的工作的,目前也是处于边工作边学习的状态。
二、方法
1、首先看成功的效果。
举个例子, 从嵌入式或单片机的角度来说,当时我学习一般是从点亮led开始,相当于学习语言的hello world。可以先看点亮led的效果,流水灯、跑马灯、呼吸灯等等,我觉得会有利于提升对学习兴趣,并且会对自己要实现什么,心里会先有一个大概,每一个阶段,都能从现象看出问题在哪里。
2、对挫折要有正确的认识
说一句可能会冒犯到大家的话,我们绝大多数人都不是万中无一的天才,学习一样东西总会遇到各种困难,这才是正常的。要明白挫折是学习过程的一部分,每个人都会经历。编程是一门复杂的技能,不可能一蹴而就。当你遇到问题时,不要过分自责或气馁,要相信自己有能力克服困难。
3、调整心态
我觉得最重要的是要记住你成功克服一个难题后的感觉,那种快感和成就感,其实也是一种很大的动力,还有就是不要过多横向比较吧,比自己优秀的人很多,可以以别人为目标,但不要老是想着绝对要超过谁谁谁,我个人觉得这样会比较累,挫败感也会很重。多点纵向比较,总结自己学会了什么,突破了什么就挺好的。
4、制定合理的计划
制定计划一定要根据自己目前的知识面,比如你现在只会C语言的一些普通操作,就先不要去直接学RTOS这种比较深层次的。要有短期目标和长期目标。例如短期目标可以设定你完成各个外设,led、串口、lcd等等,长期目标就是可以深入去做一些项目,去了解RTOS。有一个循环渐进的过程,会有更好的效果吧。
5、高效的学习方法
先掌握一些比较好的调试工具,例如单片机编程的时候,对IDE、一些串口工具还有其他工具的操作要熟悉,可以在b站搜一下教程,我当时是看正点原子和野火的,最近我看还有一些别的也讲得很好的。
三、利用资源
1、请教他人
如果是在大学,遇到挫折困难,自己实在解决不了,那可以问问身边这方面比较好的同学、社团的学长或者老师。实习或者工作的时候也可以问问自己的前辈。但这里我多说一点,要掌握好你问题的度,在学校可能还好一点,基本你问都会比较耐心,在职场,我不知道是不是全都是这样,以我的经历来讲,极少人会很有耐心的去跟你讲解,在第一次的时候能很清晰的跟你讲清楚,已经算很不错了。不懂的东西自己先查,实在不懂再去问,问别人要用心听和记,听不懂的地方最好马上提出,别去问第二次。因为无论在大学还是职场,别人也没有义务去给你讲解的。
2、网上提问
我之前也经常会在一些qq的交流群,或者说是论坛,把自己遇到实在解决不了的问题,贴出来。也有挺多人很热心解答的。多说一点,最好把问题和现象描述得清楚一点,把代码也贴出来。