Yard


大二一年前端学习之路

从大二开始学习前端,到现在也差不多一年时间,想和大家分享一下自己的前端自学之路。

刚入门前端是在一位学长的带领下开始的,花了两节课的时间教授了有关于html和css的基础知识,学会盒式模型的布局,当然每一节课都是有作业的,仿站是一个很好的学习机会,第一节课仿了百度和google的首页,第二节课仿了锤子官网。

网上的学习站点w3school,菜鸟教程。

之后开始在学长手下接一下小的切图外包,绿城教育首页,surf公司首页,另外自己也接了一个比赛的外包mato众筹,这个时候还停留在切图的领域里面(也是我认为的真正打基础的时候),但还没有真正入门前端。

这个时候感觉自己到了一个瓶颈,对于div+css的布局以及很熟练,但是仅仅停留在前端的切图方面,还没有做过需要业务交互的内容,这个时候就需要学习一门后台语言,之前也有打算学习asp .net javeEE的打算(也都玩过一会),但最后还是选择了前端的自家后台nodejs。

刚开始接触nodejs的时候感觉nodejs和前端的js根本就是两种语言,require是什么都不了解(那时候对于requirejs,seajs,angularjs,reactjs等框架和库都不了解,只懂得一个jquery),也很难找到好的学习资料,所以入门非常困难,在图书馆里借了好几本书一本一本看,但基本不讲原理,只讲用法和实战,对于一些常用模块的讲解也不够深入。js全栈教程(这是后来才发现的一个很好的教程)

学会一些基础的nodejs之后,就开始搭建express框架,自己也买了一个阿里云服务器,还搭建了个人主页,将自己以前的切图作品放了上去,购买域名,之后学习nginx进行反向代理绑定端口,这个时候前端与后台的交互以及很熟练了,只是还没有进行大量实践的机会。

搭完博客之后nodejs的学习就开始停滞,学业方面的压力也消耗着尽力与时间(我选择的专业为计算机科学与技术+自动化双专业,所以课程压力大),那段时间也有点迷茫,学习nodejs有什么用,也许也会有读者疑惑,nodejs对前端有提升吗?答案是肯定的。学习nodejs为以后学习requirejs,seajs,reactjs都有很大的帮助,以及一些前后端分离的思想,模板渲染的思想等等。语言大多不同,但是设计思想都是相似的,所以多学一门后台语言对自己肯定是有帮助的。这段时间还买了一本javascript高级程序设计来啃,很多以前不懂得东西都在书上找到了原因。

接下来就是reactjs的学习,跟着官网的教程开始学习reactjs,之后又开始学习webpack(webpack的学习坡度有点高,当时学了好久才弄懂),在nodejs环境下构建reactjs,用webpack打包,之后又学习ES6语法,所有reactjs都用ES6语法重构,结构更加清晰与美观,代码的效率也有所提高。

reactjs之后,又发现reactnative这个东西,当时也觉得挺好玩,置购了Mac来开发RN,在省服务外包大赛中制作了一款RNapp获得省二等奖。

我的导师学长和我讲的最多的是这样一句话“实践是最好的学习机会”。所以在忙完比赛之后,我就开始了找实习之路,地点杭州,成功斩获七份offer,最后选择了一家离学校近的创业公司。(没有进入阿里网易的校招还是挺遗憾,但我认为在创业公司也能学到很多。)

在最后总结一下我的自学之后,也给读者们一点参考:

  1. 前端切图(html+css)

  2. ajax(这个在文中没有写,在这个阶段学应该是最好的)

  3. nodejs(一门后台语言帮助你理解整个服务的架构,理解模板渲染,前后端分离和模块化思想)

  4. linux、express(阿里云的服务器就是linux系统,相信我,学会之后你会喜欢上linux,搭建express服务)

  5. reactjs等框架学习(个人推荐reactjs,在组件化的思想和虚拟DOM的思想很先进)

  6. 开始找实习实战充实自己的知识库吧!(Show me your code!)