前端学习

web前端学习路线与书籍推荐

 

什么是web前端?

在以前,通俗的讲是网页制作,在现在,哼哼,可以参考这篇文章

http://tieba.baidu.com/p/4817153404

那么如果高效优雅的学习web呢?

注:以下纯属个人观点,如果不当请指出

第一阶段、html(5)+css(3)

Html和css是基础中的基础,但对于很多html标签和css属性是平常开发中很难用到的,如果系统的学真的不知道学到猴年马月,所以学会一些常用的就好了,这些基础就不用买书了。推荐跟着慕课网在线敲一下代码,它那里讲的都是一些常用的东西http://www.imooc.com/learn/9

第二阶段、Javascript Dom

在这个阶段,你可以学会怎么用js写一些网页特效啊、交互啊之类的。注:这是js里面最简单最低级的功能,并不是学会了写特效就学会了js。

推荐书籍:《Javascript DOM 编程艺术》

网站资源推荐:http://www.imooc.com/course/list?c=javascript

慕课网上有很多小效果的实现,可以跟着熟悉js的语法规则

第三阶段、Jquery

什么是jquery?Jquery是一个js的库。

以前有朋友问我,为什么有jquery还要学js,这里大家要搞清楚,jq只是一个库,它把一些常用的繁琐的js方法用自己的方式封装好,便于我们使用,它强大的地方在浏览器兼容,既然提高了兼容性,那么内部肯定有繁琐的条件判断,所以jq的性能会比较偏低。

jq的插件有很多,可以实现很多效果。

所以jquery也是我们学习的基础之一。

推荐书籍《锋利的jquery》

 

第四阶段、一个UI-库(bootstrap or other)

既然javascript有库(jquery),那么css呢?

没错,一般css的库叫做ui库,或者叫做css框架,比如bootstrap,以下简称bs,我们学习bs的目的是什么?

  1.学习优雅的css命名规范

  2.学习什么是可复用的web组件,为什么要复用这些组件

  3.提高开发效率

Bootstrap中文文档http://v3.bootcss.com/

 

学完这些,你也应该入门前端了。学完以上四个部分你应该会:

  1) 高度还原psd设计稿;(简称切图)

  附上切图教程http://www.imooc.com/learn/506

  2) 会熟练使用浏览器调试工具

  Web调试工具:http://www.imooc.com/learn/137

  3) 看的懂别人写的网页,会修修改改

如果这些你都会,4k+月薪没问题

 

 

进阶(以下知识点不分前后)

移动端页面制作

会写pc端页面还远远不够,我们还得会写移动端页面:

稍微复杂点的flex布局、响应式布局和移动端基础知识:

http://www.imooc.com/learn/494

很简单的rem布局:

http://caibaojian.com/flexible-js.html

 

混合APP开发

什么是混合app开发?

原生的android、ios应用我们称之为nativeApp。

运行在网页的app我们称之为webapp,比如淘宝触屏版。

混合App其实就是原生态App与Web App的结合,简单说混合App拥有原生App的外壳,内部的展现都是通过Web App的H5技术实现,在通俗点就是可以用html5技术写一个可以安装在手机上的应用,这个应用可以扩展一些js功能,比如访问手机硬件等等。

H5+与mui:http://www.dcloud.io/

 

Javascript高级部分

我们之前说过js远不是写写特效那么简单,这里我们学习:

  a.Ajax

  什么是ajax?

  Ajax就是前端与后台交互,实现数据获取、异步请求等等。

  这方面知识百度很多

 

  b.Canvas

  什么是canvas?

  HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像,可以实现很多炫酷的效果,有兴趣的同学可以学一学

 

  c.H5新特性

  离线储存、视频、音频。。。等等

 

  d.Js面向对象与原型

  这方面内容很重要,得好好学一学。了解js的原型机制。

  推荐书籍《jsvascript面向对象编程》《你不知道的javascript》

        

   

  e.Js设计模式

 

如果想深学,可以看一看,推荐书籍《javascript 设计模式与开发实践》

 

 

Nodejs与npm

什么是nodejs?

首先,nodejs是一门后台语言,对,后台语言!在node上,我们可以用js语言进行后台的开发。相比较php,node的优点是非阻塞IO处理,采用事件驱动的异步编程,对前端开发人员很友好,做前端的很容易上手

什么是npm?

Npm是nodejs里的一个包管理器,首先得理解模块化,类似java的package。

 

这些刚开始可以不必深学,但是得知道是干啥的:

Nodejs中文网:http://nodejs.cn/

慕课网nodejs视频:http://www.imooc.com/learn/348

 

ECMAScript2015

ECMAScript2015,也称es6,下一代javascript语言,虽说是下一代,但是我已经用了好一阵子了。^-^

ES6加了很多js新特性,比如解构赋值,promise对象,模块,块作用域等等等等。。。

一般现有浏览器对es6还不是全面支持,但是可以通过一些预编译,编译成es5语法格式,让浏览器支持它。

阮一峰--《ECMAScript6入门》:http://es6.ruanyifeng.com

 

前端自动化

又是nodejs这个家伙,nodejs不仅将前端带到了后端,也在前端掀起了自动化的浪潮。

为什么要自动化。电脑能完成的为什么要手动完成,可以实现:

  1. 图片无损压缩
  2. Sass,less等css预编译的编译与压缩
  3. Js文件压缩合并
  4. 自动检测文件变化,开发时网页自动刷新
  5. 对各个模块的管理
  6. ......

 

常见的自动化工具有grunt,glup,还有后起只秀webpack。

这里我强烈推荐学习webpack,学成之后你会真正感受到什么是酸爽。

 

前端MVC框架

重头戏来了,会一个mvc框架,是现在前端招聘高级技术人员的基本条件。

为什么我要把这个放在后面,因为学起来并不是很难,繁琐的是一开始的各种node配置或者文档的es6语法看不懂,所以的先了解node与es6.

现在主流的框架有angular ,react ,vue。

Angular和react的社区背景很庞大,一个是谷歌,一个是facebook。

而我更佩服的是vue,vuejs的作者是中国人,名叫尤雨溪,从他的个人项目,到github三万+star。附上尤大美照一张

 

简直提高了程序员的平均颜值

相比于ng和react,vue更加轻量,更易于学习。当然每个框架都有自己的优点和缺点,具体怎么学习,自己选择吧。

Github 和 git

   如果你是学了几年计算机专业的学生,连github都不知道的话,那么我真的不知道你整天在看些啥。

Github是最大的开源代码托管平台,你可以在github上查看一些开源项目,你可以给一个项目贡献自己的代码(当然得符合开发规范),你也可以将自己的代码开源供他人使用。

Git是一个分布式的版本控制系统,相比于svn,git可以在离线的状态下在本地commit做一个版本,当有网的时候在一并push到仓库。

关于git和github的内容可以自行百度

附上我的github主页:https://github.com/lavyun   ^-^

原文地址:https://www.cnblogs.com/Leo_wl/p/6058396.html