自学编程需要注意什么?

前几天在知乎上看到这么一个问题,一位在读学生,自己非常想自学编程,但是很怕走一些弯路,于是提问「自学编程需要注意什么?」,我看了一圈回答,看起来都不是自学过来的,很多回答抓不到重点。

我的读者都知道,我是非科班 0 基础自学过来的,我很清楚一个人自学编程有哪些误区,有哪些需要注意的地方,以及哪些可以提升效率的地方,所以,我从我的自学经历给一些自学编程的后来者总结了一些建议,希望给正在自学编程或者打算走这条路的读者一点帮助。

1. 先培养兴趣

其实自学编程不是那么难,只要是理工科生、逻辑思维好点,最好英语也好点,基本都可以学会编程,但是很多人都失败了,原因就在于很多人还没入门就放弃了,看着一堆冰冷的英语字母、一些枯燥的书籍,致使很多人尝试了一段时间直接就放弃了。所以自学正确的姿势是一定先要培养下兴趣,不要上来就学习编程语言,先搞清楚编程能用来做什么,最好是自己有个小想法,比如自己想做个网站,自己想做个 app,有这样的想法之后,再去针对性的去学习需要的编程知识,你才会更容易坚持下去。

2. 不要钻牛角尖。

很多新手自学的时候,最开始一定会遇到各种问题,比如学习的时候搞不懂为啥一定要这样写,程序运行出来了,怎么这么神奇?它背后是什么样的原理呢?等等等,很多人都会花很大的时间去试图全部弄懂,导致花费大量的时间,自己进度同时又很慢,过来人告诉大家,初学者不要过分钻牛角尖,很多东西,你的 level 没到那个水平,自然没法完全弄懂,完全没关系,等到了后面,有些疑问自然就明白了。

这就好比,你初中的一些数学、物理题,你花了很长的时间也不一定能明白,但是到了高中之后,你会恍然大悟,原来这个原理是这个意思。

所以,初学者切忌钻牛角尖,按部就班的去学习好了,哪怕遇到一些不太明白,不知背后原理的事情,完全没关系。

3. 结合视频

初学者一定要看视频,而且不能只看视频,视频是帮助你理解的,结合书本、配合视频一起学习,效果是最好的,一些视频讲解的比较浅显,不够系统,但是只看书的话,很多人容易看到后面就看不懂了,所以,我自认为视频 + 书籍是初学的最好方式,等到后期,有能力了,看书、看视频、看博客就随你了。

现在有很多在线视频网站都很不错的,推荐两个:

「慕课网」和「Udacity」,免费的话上慕课网就够了,如果想自学能力较差,那么可以考虑在 Udacity 买套付费课程。

当然,如果付费课程都没能激起你的学习兴趣,但你又想走编程这条路,那么可以考虑去报个培训班,但是我不是特别建议,互联网时代,在线教育足以让每个人接触学习我们感兴趣的行业,付费课程 + 辅助指导 + 自学,我觉得适合大部分人了。

4. 多敲代码

编程是一个极度重视实践的行业,也许书上的代码你看得懂,但是你自己亲自敲下来一定会遇到各种问题,所以,初学者在学习的过程中,一定要亲自实践,哪怕你对着书上的代码一行一行的敲下来,也比你单纯的看有效果的多。

所以,敲代码一定是伴随着整个学习周期的,从最初的学习,到后面入门,再到之后你的提升,都离不开它,还是那句话,也许在学习的过程中你会遇到一些难题,会遇到暂时不了解的代码,没关系,就闷头敲下去,只要你能坚持下去,一些问题在后面都会自然的有答案的。

5. 坚持下去

编程这事其实真的没那么难,只不过编程在一开始不会有那么大的反馈,不像你学唱歌,花几天,就可以唱一首歌了,不像你学语文,花个一周,就会说「之乎者也」了,编程是你可能你花几个月的时间,你甚至都觉得自己啥都不会,所以很多人在一开始就放弃了。那么自学编程成功的无一例外都是坚持下来了,你得做好少则三个月,多则半年的时间一直持续学习,并且这么长时间可能感受不到任何进步的状态,但是,一旦你坚持下来了,当然,不只是单纯的熬过这个时间,你得坚持每天都要学习,等渡过这个初期阶段,你会很有感觉,后面的路虽说也不好走,但起码你没那么迷茫了,你知道该怎么学习了,你会很容易找到方向了。

相比其他行业来说,编程入门难,做到精更难。但是对于绝大部分自学编程人来说,你该优先考虑入门,争取坚持下去,用三个月到半年的时间,让自己渡过这个艰难的入门期。

6. 折腾个作品出来

很多人通过视频 + 书籍的方式坚持一段时间,掌握了点编程基础,觉得自己学的还可以了,这个时候你该考虑折腾个作品出来,这是检验你学的理论知识的过程,这个作品可以很简单,可以是一个简单的博客网站,也可以是做一个小的资讯 App,还可以是一个小的爬虫等,甚至 GitHub 有很多开源的项目,你去仿写都没问题,但是重要的一定要自己亲自去做,而不是对着 copy,相信我,无论你的理论知识掌握的多么扎实,在这个过程你都会遇到各种问题,哪怕之前你觉得很简单的东西,但是动起手来可就没那么容易了。

当你花费了很大的功夫,亲自把作品折腾出来了,你会有非常大的满足感与进步感,你的能力有了一个提升,而且这也算是你的项目经验了,有一个完整作品,其实才算具备找工作的基本能力了,这时候可以试着找一份初级的开发岗位,一旦找到工作,你的自学之路,基本算是成了,后面的路,虽然也不容易,但是你算是熬到了。

最后,再给自学的人建议一点,要善于使用搜索引擎,你遇到的那点小问题,已经有无数前辈早都遇到,并且已经分享在互联网上了,前人的经验是你的宝贵学习资源,也许你一开始使用的是百度,但是,建议你试着使用 Google,当你学会使用 Google 的时候,你会接触另一个世界。

总之,我是过来人,我非常清楚自学编程这条路有多么不易,尤其对于一些非科班的同学,你要耐得住寂寞,你要比别人更努力,你要找到适合自己的编程方向,再到找到一份工作,这过程的艰辛只有过来人才能体会,但是过来人的经验告诉你们,我自学编程成功几乎改变了我的人生轨迹,而且我从未后悔过,真心希望每个自学编程的人都可以找到自己的方向与定位,祝早日找到工作。

PS:本文原创发布于微信公众号「googdev」,欢迎关注,获取一些自学资料。

时间: 2024-08-07 08:58:03

自学编程需要注意什么?的相关文章

转 自学编程这几点非常重要

1目标 自学的路很艰难,一个人忍受寂寞去学习那些枯燥的知识,是个正常人都会感到痛苦.所以有个目标很重要,以我来讲,我当初自学编程就是了解到做开发挣钱蛮多的,加上当时日子很苦,迫切的需要挣钱,所以我下定了决心,自学 Android 就是为了挣更多的钱,之后都是这一个目标支撑我一路走下去! 我也相信,大部分人自学编程基本跟我一样,是为了找到一份高薪工作.IT 行业月薪过万是非常普遍的事,2-3年工作经验拿到1w5很正常,能力出众的甚至能达到2w甚至更高,但是在其他行业,尤其传统行业月薪过万都是特别难

巧用“搜索”解决自学编程遇到的难题

引言:相信每个自学编程的人,入门之路都经历了许多坎坷.不过我们身边藏着很多“良师”,多以利用总是能够带来惊喜.善用“搜索”就是其中一位. 本文选自<一路编程>,如何通过搜索解决自学编程中遇到的问题. 假如你在做一个 JavaScript项目,其中你得到了一个字符串格式的日期(比如, ’2014-10-08’),你想要计算下一天的日期是什么.我们可以用 parseInt将字符串转换成文字,所以你就用了这个函数. function nextDay(str) { var num = parseInt

我是如何自学编程的——“3遍读书法”

我大学本科念的是电子工程专业,所以到那个时候为止,我唯一使用过的编程语言就是C/C++.Assembly.以及 Matlab.后来一个偶然的机会我参加了一个"周末创业"的活动,并且开始渐渐对软件开发和计算机科学感兴趣,然后我发誓我要不择手段地进入这个洋溢着 无限魅力的领域.但是,我需要学习其他的编程语言,以便于和大家协作一起搞项目. 在过去的一年半时间里,我已经学了Java(用于Android开发).Python和JavaScript(&HTML / CSS)(用于Web开发)

如何自学编程?

HI!我是Myb.很多人看到IT职业的高薪都想去自学编程,可是又不知道通过什么途径去学.关于如何自学编程这个问题,我会从程序的实质,编程的应用,还有学习资料参考去解答. 一:编程的实质 编程的实质无非是编写一些有逻辑性的英文.数字字符的过程.这些字符会通过一个计算机的一个翻译器自动转化为计算机能看懂的机器指令,然后计算机通过这些指令调动CPU.内存.IO设备等硬件工作. 二:编程的应用及语言 比较流行的编程对应的职业分类有: 网页开发:制作移动手机网页和电脑网页的 常用语言:HTML+CSS+J

自学编程的人,都是怎么找到自己的第一份工作的

每年毕业这么多大学生,很多被培训机构弄去培训了,但是更多的还是选择在大学期间,自力更生去自学,自学的人很多都觉得没有方向太难了,自学怎么坚持下去,自学完了怎么去找到自己的第一份工作. 带着这么多的问题,小编就尝试着解答一番,如何才能直接一步到位拿到自己工作的第一份offer. “ 没有毅力,成功只是虚仰虎头蛇尾的奋斗也只是徒劳 ” 首先建立起自力更生的信心, 换句话说就是拿出学习的勇气和毅力. 很多正在自学的人, 都是觉得我能不能行啊, 周围的都去参加培训了,最后能不能比的过参加培训 的啊,内心

如何系统、科学地自学编程知识?

虽然不是码农,但是一直都有一颗码农的心.所以一直想学好怎么编程. 先说下自己的背景吧:已经毕业若干年工科男,所以基础知识也就是大学里谭浩强的那本绿壳的 C 语言.但是除了基本的变量.数组.选择.循环,到了指针那就记不清了. 然后因为工作需要,自己学了下 Linux 的 Shell 编程(Linux 系统的基础知识很一般),以及 W3School 里面 HTML, CSS 及 PHP 的部分内容.数据库的知识仅限于基础的 selecet, insert, update 操作.最后抄抄改改做了个功能

分享:自学编程的方法

严重声明:本文内容仅代表个人观点,以供参考. 不管是在某些论坛上,或者在微博上,都看到过很多人提问如何自学编程.心声共鸣啊,我就是从完全自学开启编程之路的. 要说到自学的过程.要多长时间才算学会.有什么具体方法等问题真不好回答.每个人对新鲜事物的接受能力不同,也决定了学习方法各异,难道说出一个标准的答案来.更何况这世界上本来就不存在标准答案,只不过是某些过于激进的文明,非要强调标准罢了. 不管怎么谈,我想啊,希望通过自学走上编程之路的朋友,都必须先认清自学的优点与缺点,尤其是缺点,你必须先有所了

我是如何自学编程的“3遍读书法”

我大学本科念的是电子工程专业,所以到那个时候为止,我唯一使用过的编程语言就是C/C++.Assembly.以及 Matlab.后来一个偶然的机会我参加了一个“周末创业”的活动,并且开始渐渐对软件开发和计算机科学感兴趣,然后我发誓我要不择手段地进入这个洋溢着无限魅力的领域.但是,我需要学习其他的编程语言,以便于和大家协作一起搞项目. 在过去的一年半时间里,我已经学了Java(用于Android开发).Python和JavaScript(&HTML / CSS)(用于Web开发).在这“路漫漫其修远

零基础自学编程前需要知道的知识

你是否适合编程?学习编程后能做什么?如何选择编程语言?有哪些免费的线上学习网站推荐?今天这篇好文将那些自学编程前需要了解和思考的问题都记录下来,希望能给那些刚刚开始或正准备自学编程的朋友们带去一些启发. 你是否适合自学编程 自学编程会是一个漫长而艰辛的过程,在你信心满满地准备开始之前,不妨先问问自己下面这几个问题,来判断你是否真的适合自学编程呢? · 你是一个逻辑和抽象思维能力比较强的人吗? · 你是否愿意不断地去学习那些新的东西,而在大多数时间内你都需要去自学. · 当你遇到一些问题和困难的时

自学编程的方法

严重声明:本文内容仅代表个人观点,以供参考. 不管是在某些论坛上,或者在微博上,都看到过很多人提问如何自学编程.心声共鸣啊,我就是从完全自学开启编程之路的. 要说到自学的过程.要多长时间才算学会.有什么具体方法等问题真不好回答.每个人对新鲜事物的接受能力不同,也决定了学习方法各异,难道说出一个标准的答案来.更何况这世界上本来就不存在标准答案,只不过是某些过于激进的文明,非要强调标准罢了. 不管怎么谈,我想啊,希望通过自学走上编程之路的朋友,都必须先认清自学的优点与缺点,尤其是缺点,你必须先有所了