受访者:吴林锋
编辑:傅小小
责编:曹金旺
编者按:很多技术新人对编程充满兴趣,却不得要领,有的甚至半年尚未入门,所以本期创作人生的话题是:如何高效学习编程。“技术成长”往往离不开“持续学习”,他是一位大学生,在学业之余一直丰富自己。一年时间原创了251篇博文,收获112万+访问、14559个赞,引领数万名粉丝一起打卡学习。希望他的经历,能够帮助你更高效的学习编程。
CSDN程序员学院:请您先介绍一下您的学习经历。您学习的第一个语言是什么?能和我们分享一下您在学习编程过程中的经历吗?
看,未来:我现在是集美大学大数据专业大三的学生,大一时参加了企业的寒假实习,本以为C++考试成绩不错,完全能hold住,结果实习第一天我就一脸懵了。什么函数调用?什么多文件编程?还QT,看得云里雾里的,这是我了解的C++吗?
后来才知道,我们学的是标准C++,而且教的也不多,连STL都没怎么接触过。
于是我就去参加了培训,嵌入式Linux C/C++工程师培训,为期一年左右。
刚开始是C语言,但是我却连大小写切换都不太会。
但是我有嘴啊,不会我就问,没啥不好意思的,学习嘛,谁不是从零开始。我们班长(培训班的,大四学长)也是很耐心的。
C语言学完了,写了一个2048小游戏,和一个ATM机系统。慢慢的就有感觉了(毕竟花了那么多钱)。
第二阶段,是底层的单片机。大家几乎都没什么基础,还有几个光电专业的,基础也比较薄弱。我觉得,应该尝试另一种学习模式,是时候摆脱依赖了。于是我就有点剑走偏锋了,做项目的时候,大家都用一套模式,而我用另一套模式,这样造成的结果就很尴尬,出了问题只能自己解决。也正是那次,我明白老师说的:“我在上面给你们分析项目,你们能不能不要敲代码?你们那点敲代码的时间吗?”
那几天晚上,我彻夜修改着代码中的重复项,深深的感受到了「代码设计」的重要性。如果我先把项目规划清楚,需求分析捋清楚,多听老师讲讲设计模式,至于这样吗?
到了第三阶段,终于是到了C++了,是我比较喜欢的语言,且大家基本没接触过。我偷笑。我感觉,我的机会来了。于是更加的用功。当时的我给自己定了个目标,宗旨是:遇到问题可以讨论,但是能不问就不问。一定要摆脱依赖,自己的bug要自己解决。也因为在二阶段,抽象的单片机问题自主解决留下的好习惯吧。单片机都能搞定,还有什么搞不定?
三阶段持续了很久,也很忙,正是因为忙,我学了很多东西,也做了很多项目。学了C++、Linux网络编程、QT开发、数据库。做了两个项目,一个是捕鱼达人,一个是雷霆战机(联网)。也正是这两个项目,给我留下了深刻印象。
有一次,我碰到一个比较难的bug,去问我的老师,老师反手就是一句:“你绞尽脑汁了吗?你想到崩溃了吗?”我说,还没有。老师说:“还没有那你来找我干嘛?”。
回去想了三天还是没办法,老师就帮忙解决了。
办法总比困难多,写代码不可能会一帆风顺的。后来,我便习惯了遇到难题自己先想方设法的去解决掉,而不是碰上硬骨头就退缩。这对我后来的行为方式也有很大的影响,那句话是怎么说的来着:强者发奋,抽刀向更强者。Just do it。
还有一件事让我感触很大。
做雷霆战机之前,我在为项目找素材,想找些优质的图片。我搜索了一星期,收获甚微。老师终于是看不下去了,问我“XX啊,素材收集的怎么样啦?”我说:“还在找”。老师说:“别找了,淘宝打开,搜索“雷霆战机””。神奇的事情发生了。。。
一块钱,我花了一周的努力,就值一块钱。不对,人家一块钱,有八千张图,我一星期,八十张都没找到。
这就是经验吧,或者说,灵活变通的能力。君子性非异也,善假于物也。就像学习,有人带和自己摸索始终是不同的效果。
四阶段教的是全面的Linux服务端开发,比较抽象,但是我觉得还好。这时我当了团队项目的组长,带着我的组员们一路狂飙,走了一堆的弯路......
我们不断试错,不断尝试,也让我收获了很多。
最后一个项目,是在疫情期间做的。疫情在家我就开始自学了,先巩固了一下Linux后端开发相关知识,也是我在CSDN上更新的第一个系列。
那段时间,真的是非常勤奋,带着从培训班刚出来的优良作风,早上八点起床,八点半准时开始学习。晚上十一点关掉电脑,开始打游戏。哪像现在,九点起来,九点半学习,晚上十点休息。下午还要出去溜达一圈。
CSDN程序员学院:为什么选择了大数据专业呢?
看,未来:高三的时候,好朋友给了我一本书《数据之巅》,看完之后我很向往这个职业,我感觉能看着那些走势图并分析的头头是道就很酷,所以就义无反顾的选择了大数据专业。
CSDN程序员学院:您除了在学校学习,平时还会通过哪些平台学习编程呢?
看,未来:平台啊,CSDN、图书馆、CSDN学院、腾讯课堂。对新技术,我不喜欢自学,更倾向于付费学习,算一笔账就清楚了:买个课,快速上手,还有老师(我遇到MySQL的问题就去问我买课的那个老师)带着。自学的话,眼界其实没那么宽啦,而且,我想问一句,时间是不值钱吗?
CSDN程序员学院:听您说在学习时看过很多书,可以给大家推荐一些。
看,未来:在学STL时,看了侯捷老师的《STL源码剖析》,这本书我强烈推荐,我前后看了三遍,感触很深。是这本书让我的技术得到了质的提升。
《大话设计模式》这本书虽然我不喜欢,但是“依赖倒置原则”,一下就吸引住我了,所以我现在很喜欢这个原则。然后,我又把设计模式刷了三遍。《大话设计模式》、《设计模式之禅》、《研磨设计模式》,后面又看了不少这方面的书,比如说《敏捷软件开发》、《重构》、《人月神话》等等。学了设计模式,我回头看自己以前写的项目,简直不忍直视,什么垃圾?谁写的?写成这个样子。
也正是设计模式,让我对C++有了更深的认识。如果说《STL源码剖析》让我明白了什么叫算法,那么设计模式就是让我明白了什么叫“多态”,什么叫“封装”。
CSDN程序员学院:看您的博客中有分享学习笔记,有些是CSDN程序员学院的课程,对您帮助最大的是哪个课程呢?
看,未来:帮助最大的啊,柳峰老师的MySQL课,四天上手MySQL,他还专门的开了答疑群,我们有问题都可以问他,他也会很耐心的解答。
CSDN程序员学院:您认为编程学习最重要的是什么?
看,未来:新手:遇到问题,马上有人给你解决。学习一段时间之后:要独立解决问题。学到后面,要懂得设计。
CSDN程序员学院:编程的实战很重要,您平时都是如何进行实战提高自己的能力的?
看,未来:学以致用。学完做项目,把所学知识都用上,不要去考虑哪个技术性能好,或者说用不用得上,安排上就是了。就算你的数据量只有100个,也要把redis、消息队列给安排上。如果有企业实习会更好,那就要听组长的话了。
CSDN程序员学院:是什么样的契机,让您在CSDN撰写博客呢?您最大的成就是什么?接下来有什么目标吗?可以和我们分享一下您的故事吗?
看,未来:我的好基友跟我说:“你天天白嫖,也不分享?”于是我就来了。
写博客对我最大的帮助就是倒逼我学习。当时我的班主任姐姐跟我说:"小锋儿啊,你要坚持日更哦,我都会去看的。"这也促使我持续更新,有人关注比较有压力,压力自然就成了动力。
我觉得最大的成就是让我认识了学长。他发现我,对我的帮助很大,可以说是我的伯乐。学长说:“天天看你在朋友圈发博客,应该是比较努力的人。我们就喜欢努力的人,要约出来碰一下。”
接下来的目标就是找个好点的公司实习,做做项目,学学车,赚赚钱,找个对象。哈哈......
CSDN程序员学院:您的博客昵称叫“看,未来”,有什么寓意吗?为什么起这个名字呢?
看,未来:我很喜欢一款软件,叫“前瞻经济学人”,它的启动界面上有这么一句话“看懂未来新十年”。我很喜欢,就起了这么名字。我相信,未来可期!!!
CSDN程序员学院:您最近更新的「算法、数据结构」相关的文章,您最初写作想法是什么?这类文章能为读者带来什么?您近期计划写哪些方面的内容呢?
看,未来:想法很纯粹,我要投暑期实习了,Python写多了C++有点生疏。算法和数构用来复习C++是最快的,一举两得。
算法系列能带来什么不敢说,但是数据结构系列我觉得值得一看。有很多不错的数据结构。
接下来会更新Linux后端开发相关的,包括中间件。
CSDN程序员学院:您目前还在大学校园学习,有想过未来从事什么职业吗?您对程序员这个职业有什么看法呢?
看,未来:未来想从事的职业就是程序员。写写代码,写写博客,发发视频。
CSDN程序员学院:您在学习过程中,对于同样处在大学校园里的大学生们有什么建议和小窍门分享吗?
看,未来:建议啊:除了狗带,如果你早晚要做一件事,那就趁早。时间才是最值钱的,要自私点,为自己考虑,为自己的将来考虑。不要人家让你干嘛就干嘛,也不要人家说不行就不行,要有自己的判断能力。还有就是,不要困在感情里。
CSDN程序员学院:您是如何安排您一天的时间呢?平时有什么爱好呢?可以和我们分享一下。
看,未来:早上起来,先学习一早上。
下午博客总结一下,然后出去运动,医生说要去运动。
晚上回来,补一下白天没干完的事情。如果时间还多,就再学一点。
十点半之后的时间,就不要联系我了,那是我的私人时间了,我要去打游戏了。
爱好嘛,下象棋。
CSDN程序员学院:您对CSDN及CSDN学院有什么建议吗?
看,未来:建议谈不上啦,用久了,习惯成自然了。
「看,未来」将在今晚8点,为大家分享他的技术成长故事。
点击进入直播间并订阅,看新晋博主如何高效学习编程。
直播中给你准备了惊喜抽奖,至于奖品是什么,你来看呀~
转载:https://blog.csdn.net/csdngkk/article/details/114965095