00、写在前面
最近有读者反映学习编程困难,想放弃,询问是不是真的有不适合编程的人?我结合最近自己的学习经历和思考以及最近在数据结构与算法的折磨下得出的一些心得。
唐代大臣魏徵的【谏太宗十思疏】中写道,"善始者实繁,克终者盖寡"。大概的意思是:如果有好多人同时做一件事情,善于开始去做的人是非常多的,但是能够把这件事做好的人就寥寥无几了。
这句千古名言可以说是非常经典了,用来形容学习编程的过程同样适合。在成为专家大佬甚至科学家之前,困难会一直伴随着你,有多少人放弃可想而知,所以才会有了另一句【行百里者半九十】。
在这篇文章里,给所有的编程者提供了 10 个真实有用的建议。
01、双屏分屏
如果经济条件负担得起的话,我真的建议搞一个双屏幕。
在大多数情况下,学习编程时最好把有两个并排的面板可以使用——一个给你的 Jupyter notebook 或者 vscode;而另一个则是 Google Chrome 浏览器。IDE用来编程编译运行查看代码结果,浏览器用来查看文档、CSDN、知乎或者 Stack Overflow 和一些教程博客等等。等你渐渐熟悉了这一切之后,越来越熟练时,你就会无法逃离这种专注于工作的感觉了,而且非常之方便(爽)。
PS:如果想用快捷键来切换分屏和全屏,可以看下面的两个动图:
-
Windows:
-
Mac:
02、手机静音
这么多年摸爬滚打,经过九年义务教育和考研的洗礼,我觉得成功一个决定性的因素就是【专注】。
你越能专注集中注意力,你就越能学得快,越能学的好。
03、只学一个
虽然越来越多的信息出现在互联网上,越来越多的付费课程,越来越多的博客,越来越多的专业,其中最为明显的就是【人工智能】。
不要试图同时开多个科目,比如学习两个或者三个,这样时间就不只是变成1/2或者1/3,而是变成1/5甚至1/10,同时效率也会受到影响,因为人的大脑会存留记忆。同理, 不要分心于闪闪发光的诱人的但和你正在学习的东西不相关的东西,如果真的很感兴趣,就找个地方,保存一下 url,比如Chrome 的书签,
04、学会沟通
在你学习编程的过程中,会试图封闭自己,什么都自己完成,你猜怎么着?
效率不高。
当和他人合作时,个人程序的缺点就会暴露出来,所以你学会编写更有效的代码,因为有人在变相地监视你。可能最开始你会极度不适应,但是作为一个程序员,总有人在审查校验你的代码,所以习惯这些。
05、精力管理
其实如果你有过一阵子的经历,就应该知道程序员绝对是一个体力活,所以睡觉,保持体力是一件多么重要的事就不言而喻了。
另一个小故事,Dinesh教授有一个,保持了几十年的习惯,就是(平均)每天只睡4个多小时,可以说是智力超群、体力超群、习惯超群。。。恐怖如斯,体力的竞争上老外明显要更强,中国人重视程度还是差一些,反正我自己是深有体会,加强中,每天跳跳绳也是好的。
06、示例代码
现在资源泛滥的时代,代码一抓一大把,GitHub或者博客,再或者书籍源代码,琳琅满目的。
亲手去把那些示例代码敲一遍吧,须知【好记性不如烂笔头】。
07、温故知新
相信大家第一想到应该是大名鼎鼎的艾宾浩斯记忆曲线。
研究表明,如果不抓紧复习,最后就只能记得剩下的21%,所以要每隔一段时间,就重复一次,这是比死记硬背有效得多的。
08、用快捷键
常用快捷键的人效率确实要比别人高,比如PPT。
pycharm:
09、语言基础
在使用官方或者个人编写的程序库之前,要充分理解一门编程语言,比如python或者C++。
10、代码错误
在绝大多数时候,作为一个程序员,你都是在寻找项目中的 Bug,否则你无法继续前进。
- 比如是不是代码打错了
- 是不是旧版本资源
如果都不是,那么可以直接复制错误信息,去使用百度或者谷歌,再或者博客论坛之类的去查询你的错误,对网络资源进行筛选,以分清哪些是有效的。
当然一些低级错误除外,主要是不熟悉导致的,比如C++的分号,Python的缩进。
如果有幸帮到你,请帮我点个【赞】,给个【关注】!如果能顺带【评论】给个鼓励,我将不胜感激。
如果想要更多的资源,欢迎关注 @我是管小亮,文字强迫症MAX~
回复【福利】即可获取我为你准备的大礼,包括C++,编程四大件,NLP,深度学习等等的资料。
回复【数据结构】,即可获得算法与数据结构资料
想看更多文(段)章(子),欢迎关注微信公众号「程序员管小亮」~