很多想学编程的私聊问我,初学者应该看什么样的书?这句话问的让人直接没法回答,起码没有拿出足够的诚意去研究下软件到底是怎么回事,应该是带着问题说软件开发这么多的方向,该如何选择入手?找到自己感兴趣的方向然后才是寻找看什么的书入门合适?这才是自学的入门之道。
在这梳理下如何去学习编程,如何制定适合自己的方向和策略?
第一步:选择自己的就业方向,这个对于初学者来说可能很难界定,如果不能准确定位就是选择一个大致的方向
现在软件类别大致分类:
前端方向:HTML/CSS JavaScript jQuery Node.js Bootstrap Angular React.JS Vue.js Sass/Less WebApp
后端方向:PHP Java SpringBoot Python C语言 C++ Go C# Ruby
移动开发:Android iOS Unity 3D Cocos2d-x
数据库:MySQL MongoDB Oracle SQL Server
人工智能:机器学习 深度学习
大数据/云计算:hadoop Spark Storm
运维/测试:linux 测试
UI设计:动效动画 APPUI设计 设计工具 设计基础
笔者根据自己的认知总结了一下软件的大致的分类,如果是对方向认知不清楚的可以对号入座看下。如果不是计算机专业的建议看下计算机原理,理解下计算机工作的原理,不然在学习C语言等靠近底层的语言,二进制十六进制的转化都晕半天,涉及到移位运算方面低八位高八位的数据置换都需要一定的基础。
第二步:有了方向就可以选择对应的教材或者视频学习
不同的方向对应的书本也不尽相同,相应的视频也要搞一套,学习过程中以书本为主线,视频为辅助。书本为主线的目的为了建立自己的知识体系,编程是一个不断磨练自己思维的过程,这个需要不停的冲击自己的认知范围。所以书本更加能满足这种认知需要,肯定有人提出视频直观大方,有些东西讲的非常透彻,但视频是别人努力加工过的东西,在思维上做了全面的加工,理解起来比较快捷,少了一些思维的波折,编程学习东西有时候需要掉到坑里然后折腾出来涨经验,书本的学习能满足这方面的需求。
书本上学习更容易让人犯困,而且需要强大的意志力的支撑,这是互相矛盾体的关系,作为一个自学编程的人,如何去克服还要靠自己。在遇到大的困惑的时候可以选择视频破局,遇到大的方向有疑惑最后能找到有经验的人问下。
第三步:开始尝试做一些小的项目练手
到了这个阶段是检测自己学习成果的阶段了,去开源社区寻找,或者在网上找一些过来人问下,自己找资料去做。还可以去网上承包一些小项目尝试去搞,这种适合多个人一起去搞。
在做的过程中如果觉得有疑惑的,再回头去查漏补缺,加强基础方面的学习。如果在这个过程中能够找到实习的机会也是种不错的锻炼方式。
在这个过程中应该能够感受到基础好处直接差异,所以不要觉得去做项目了,基础就可以丢下不管了。很多java的技术高手都工作好多年了,还会返回头看编程思想看很多遍,基础方面的东西看多少遍都不为过。
以上基本上算是总结了自学编程如何去入门以及如何去选择一些方向。
所有的一切都需要毅力做支撑,否则一切都是空谈。
领取专属 10元无门槛券
私享最新 技术干货