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

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

1. 先培养兴趣

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

2. 不要钻牛角尖。

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

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

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

3. 结合视频

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

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

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

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

4. 多敲代码

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

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

5. 坚持下去

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

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

6. 折腾个作品出来

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

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

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

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

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

自学编程需要注意什么? 1相关推荐

  1. 是时候改变自学编程方法了,这篇国外网友的分享被fast.ai创始人等点赞

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI 还记得你大学时的Java.C.Python等语言是怎么学习的吗?让我们打开经典教材和网络课程看一下,几乎都是下面的套路: 学习变量.数组. ...

  2. 学习人必看!空军老兵自学编程,仅隔一年成为国土安全部的数据库分析师

    来源:大数据文摘 本文约2000字,建议阅读5分钟 他自学编程,仅隔一年成为国土安全部的数据库分析师. 关注学习本身之前,我们先看看其他东西. 相信大家都看过2016年李安导演的电影<比利林恩的 ...

  3. 太励志!80 后草根创业者自学编程年收入上亿

    整理 | 王晓曼 出品 | 程序人生 (ID:coder _life) 近日,话题#80后草根创业者自学编程年收入上亿#登上微博热搜,网友们纷纷为这位励志哥的故事点赞. 图片来源:封面新闻 自学编程, ...

  4. 9 岁自学编程、24 岁身价涨至数百万美元,与微软一较高低的大佬多厉害?

    作者 | 年素清 责编 | 王晓曼 出品 | 程序人生 (ID:coder _life) 马克•安德森(Marc Andreessen)是美国著名的企业家.投资者.软件工程师.他9岁接触电脑,通过自己 ...

  5. 程序员自学编程创立 GREE,推出世界上第一款手机社交游戏,白手起家成为亚洲最年轻的巨富...

    作者 | 年素清 责编 | 王晓曼 出品 | 程序人生 (ID:coder _life) 田中良和(Yoshikazu Tanaka)是日本的IT首富,也是亚洲最年轻的白手起家型亿万富翁.他早年靠自学 ...

  6. 沉迷游戏自学编程,创建游戏帝国,却黯然退场的“鬼才程序员”

    作者 | 年素清 责编 | 王晓曼 出品 | 程序人生 (ID:coder _life) 约翰·罗梅洛(John Romero)是著名的电子游戏制作人,他靠着自学成才拥有了出色的编程能力,被称作&qu ...

  7. 大写的服!用耳朵也能写代码?盲人程序员自学编程成为全栈工程师

    作者 | 年素清 责编 | 王晓曼 出品 | 程序人生 (ID:coder _life) 蔡勇斌幼年失明,靠着顽强的毅力和不服输的精神自学编程,成为了一名全栈工程师.作为一名盲人,为了让全中国的其他盲 ...

  8. 电脑硬件知识学习_学习计算机基础必读的4本经典入门书籍,自学编程必备书单!...

    点击蓝色"程序员书单"关注我哟 加个"星标",每天带你看好文,读好书! 文/黄小斜 转载请注明出处 新手学习计算机并非易事,作为一个自学编程的过来人,深知打好计 ...

  9. 自学编程的朋友,我想给你们这 5 个建议

    作者:黄小斜 文章来源:微信公众号[程序员江湖] 阅读本文大概需要 2.8 分钟. ​ 很多人都想转行互联网,不管是出于兴趣.行业前景还是薪资的考虑,想要转行互联网的人们必须要面对一个问题,那就是如何 ...

  10. 是时候改变自学编程方法了,这篇国外网友的教程被fast.ai创始人点赞

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI 还记得你大学时的Java.C.Python等语言是怎么学习的吗?让我们打开经典教材和网络课程看一下,几乎都是下面的套路: 学习变量.数组. ...

最新文章

  1. python经典题库和答案_吐血总结,Python经典面试题及答案
  2. numpy中where函数的用法
  3. sturst2的原理及环境搭建
  4. php中文网企业网站,闻名 PHP企业网站系统 weenCompany v5.3.0 简体中文 UTF8
  5. SDNU 1194.传纸条(DP) 1032.机器人
  6. Vue 项目上线优化
  7. 电路 第五版 第一章 电路模型和电路定律
  8. 字符串经典题之正则匹配字符串
  9. 中国工商银行的 Service Mesh 探索与实践
  10. python可以用del释放资源_Python中垃圾回收和del语句详解
  11. Hero In Maze
  12. java基于JSP+Servlet的员工绩效考核系统
  13. java linux cd命令无效,为什么“cd”不能在shell脚本中工作?
  14. 长江大学计算机网络期末考试试题及答案,长江大学计算机基础考试试题
  15. Java 读取Excel ( xls 和 xlsx 格式 )
  16. 使用Python来计算均值、中位数、标准差
  17. 至联云讲解《FIL和BTC的区别是什么?》
  18. 苹果11蓝牙配对不成功怎么办_iphone11蓝牙搜不到设备怎么办
  19. 空指针异常的原因分析
  20. 关于网易云音乐代码音乐播放器单曲和歌单的调用

热门文章

  1. edge浏览器设置启动时默认打开新标签页
  2. 2019.6.24 校内测试 NOIP模拟 Day 2 分析+题解
  3. 10 Guidelines for Better Website Background Videos
  4. 百度智能云智慧监管平台落地宁波,物联网加持赋能安全生产
  5. 同心向前,Google Play 十周年啦!
  6. 用 “类别混搭” 法实现移动游戏的创新
  7. Linu中的网络配置(设置ip,网关(路由功能),dns),虚拟机上网
  8. 2018年8月PMI全球认证人士及《项目管理知识体系指南(PMBOK® 指南)》发行量统计数据公布
  9. 【语义网】Jena框架简介及实战
  10. 2015年工作总结——①名IT女的日常