由于前端开发的火热和一些IT巨头公司 对 web前端开发人员的需求旺盛,让越来越多的人转入前端。前端开发领域 是IT技术语言领域唯一一个男女老少都可以快速入门并快速提升兴趣的领域,今天就来聊聊前端到底该怎么学~

话不多说,让我们直接进入今天的主题。

web前端到底怎么学?

那么在讲 Web前端怎么学这个大命题之前呢,依据我本人的尿性,还是得先把你拉入坑,让你在坑里好好学~ 
想说爱你不容易!但是我会想方设法让你爱上她(Web前端开发)。 
一般据我经验,在喜欢并且决定和她恋爱之前,我都会做一下充分准备和调查,有必要了解和研究清楚 ‘她’ 的几个特性和习惯。

  • web前端的基本工作职责 和基础技能(要清楚)

  • web前端的分类和门派(简要概述,武林 实在是太大啦)。

  • 前端开发 必看的书籍资料(干货重点)。

如果你已经了解清楚以上前2点并思路清晰,那就跳到后面的 “前端开发 : 必看的书籍资料 ” 。

web前端的基本工作职责

“ 入一行,要先知一行 ”;我们来看看Web前端开发职位 无论什么门派都要做到的一些基本工作职责。

首先,你必须是一个合格的“页面仔”,这个叫法不好听,但很生动。 
我们都知道,所有呈现的内容都是基于HTML 网页的。

如果你的HTML、CSS(包括现在的HTML5+CSS3)基础不会,或者不够扎实,都很难在有大的进步,或者你的JS 很好,但布局基础不行,还是不能算合格的web前端。

其次,前端主要负责实现视觉和交互功能,以及与后端服务器通信,完成业务逻辑。现在前端的核心价值在于对用户体验的极致追求。 
那么我们靠什么来提升用户体验和人性化操作,让用户觉得体验牛x、舒服呢?(当然细分厉害的公司,会有专门的 用户体验攻城狮) 
当然是我们自始自终的主角 JavaScript了,毕竟它最初就是为浏览器而生的脚本语言。

然而,JS这门语言并不是一种强类型语言,更像是一种解释型语言,所以很多属性,在不同的浏览器环境解释有很大不同导致,效果和性能千差万别,而且很多属性之长,之多,之巨都很有工作量。

之后,就出现了jQuery 这种的框架神器,由于其好用,简单,效果多样,兼容完美,高效率等特性,迅速席卷全世界,所以如果想入门,jQuery 这个东西你是逃不掉的,而且利用它简单的语法,你会很快将一些效果实现出来,迅速提升兴趣。

再后,既然涉及到视觉 和用户体验,那么UI 设计知识,你肯定要涉及或者懂一些设计方面的技能和基本素养,比如PS的一些基本操作,切图,和颜色值(比如会改个字,隐藏个图层,改个尺寸,变个颜色什么滴),屏幕适配方案等,讲道理说:平时并不需要我们做,但技能包里绝对要有。

最后,服务器知识+后端语言基础,这个职责和话题就比较hight了,到后面我们会一一解释。

总之,web前端同样是程序员,由于前端是位于后端程序和界面设计师之间的岗位,相当于中间桥梁,要完成三者的对接,涉及到广泛 的知识,规模大到工程级,也就有了前端工程师的说法(某人总结,很是到位)。

Web前端工程师,是一个要精通本职HTML、CSS、JavaScript,也要了解后端编程,了解界面设计,了解软件工程的综合人才。 
看到这一大篇的职责和技能,你也别害怕,因为这些就像小孩子,会走路,会说话。只要你有兴趣,只要有人领路,有教程自然而然就能掌握的技能,至于一些设计素养,反正你不是UI,有最好,没有又有什么所谓呢?

web前端的分类和门派

根据Web前端的细分工种 和 业务不同,我无耻的把她比拟出来几个门派,供大家参考,也让无比庞大的前端划分变得有趣一些,不然下面我放一张图, 你看了会晕菜。 
这里我先简单说几种,我们常常熟知的几个门派,比如: 
少林派:七十二般武艺样样精通 - Web网站开发

武当派:以柔克刚 - 移动APP开发

峨嵋派:倾国倾城 - canvas 数据可视化

华山派:剑法精湛 -  nodejs开发

逍遥派:潇洒飘逸 -  HTML5游戏

让你晕菜的技能树 ,客观您感受一下先~

Web前端知识体系实在是太庞大,先不感慨了,我们赶紧去看干货!

前端开发 : 必看的书籍资料

HTML + CSS这部分建议在在线教程上学习,边学边练,每个属性后还有在线测试。 然后过一遍之后可以模仿一些网站做些页面。记住这个一定要多练、多练、多练 ,最重要的事儿 还得我说三遍? 
JavaScript 要学的内容实在很多,如果没有其他编程语言的基础的话,学起来可能要费些力,还是建议先通过在线教程学习一些基本语法和定义。

然后你必须要看书,然后实践(好多人问 有没有快速捷径,我只能告诉你:如果有捷径,码农们就不用天天如此苦逼了吧)。

记住:忍得住寂寞枯燥,才能拿得到高薪!

对于习惯看视频学习的同学,以上内容也可以在在线学习网站上去搜,现在大部分基础课程讲解都还不错。跟着敲一起学,确实可以避免看书查资料的枯燥。 
以下内容都是结合我自己的学习路线与经验,再整理汇总了网络各路大神的资料,希望能帮助源源不断入坑的新人更好的学习。(web前端学习交流群:328058344 禁止闲聊,非喜勿进!)

前端书籍必读、必买

★ 越多,推荐等级越高,和难度无关。最好按照我给的顺序入门,这样不会让你枯燥,想放弃,如果先推荐经典的厚的,满篇定义,我估计是害你们放弃。

1 . JavaScript

先说 JavaScript,因为前面说了,CSS 最好跟着视频练习,毕竟都是可视化的,像做艺术。

《JavaScript DOM编程艺术》

★★★★★ 
最好的JS入门书籍,最让人有兴趣读完的那种书。 
它通过一个 幻灯片 案例,从头到尾教你实现出来,最后效果实现的同时,基本的JS常用属性,你也就滚瓜烂熟了,很有成就感。(个人很偏向这种风格书籍,此书让我彻底爱上前端js) 
一目了然地告诉你如何用JS操作DOM(这是浏览器端编程的基本功),还灌输了最符合标准的编程理念。可惜有点老,最新一版是2010年的。不过不影响阅读和实现,全部按照最新ES5属性就行了。

《JavaScript高级程序设计》

★★★★ 
又称红宝书,雅虎首席前端架构师,YUI的作者Zakas出品。虽然书名带了“高级”二字,但是讲得都很基础的属性内容,事无巨细。关键一点是翻译的也很到位,并不是如嚼蜡一般,这很重要。看此书,我建议配着下面的犀牛书一起 看效果更佳。

《JavaScript权威指南》


★★★★★ 
著名的淘宝前端团队翻译的,看译者列表都是一堆前期大神。 
这本书又叫犀牛书,被国人誉为:JavaScript开发者的圣经。网上对此书评价很多很好,大概意思是说这本书是一本JavaScript文档手册,更适合当作字典和备忘录查询来使用。 
我也是对这本书有很厚的感情和依赖(忘了属性就拿来翻翻,总有收获),个人感觉这本书还是写得枯燥了些,毕竟是工具性质,不适合当作第一本入门来看,不过内容绝对是五颗星,无可挑剔!神书

《JavaScript语言精粹》

★★★★★ 
作者是大名鼎鼎的 【老道】,我的JS 偶像,我github第一个关注的就是这个大胡子叔叔。他是 JSON格式的发明和维护者,也有很多著作和对JS 这门语言的超多贡献,可见此人功力绝对顶级! 
这本书,属于稍微入门以后看的,了解了一些中高级概念 比如:闭包、原型链、作用域链、继承封装等以后,看此书有如神助,看一页相当于犀牛书几十页的讲解(不吹牛逼,当时我是这感觉的)

2 . CSS

CSS类, 如果视频看完了,练习的熟练了,你还需要一些书的推荐和查询,也是有必要的,我再来给你罗列几本经典的收藏书,买不买均可的。。

《Head first HTML&CSS》

★★★ 
好的入门书。看两遍就对HTML & CSS 有个大概印象了。 
此时把w3cschool作为备查手册收藏起来,结合此书,事半功倍,成就感爆棚。

《CSS权威指南(第三版)》

★★★★ 
最权威的CSS书籍,除了阅读W3C的文档外的不二选择(就是翻译太操蛋,可能有的词你以为是火星语,不过不影响阅读)。有时间可以反复看,有css3内容,并当做字典随时查。类似犀牛书。

《图解CSS3:核心技术与案例实践》

★★★ 
这本书讲解的是最新的CSS3(前几本书停留在CSS2.1时代,2.1是基础),CSS3也是必学的,不然真的跟不上时代了。

《CSS禅意花园》

★★★★ 
这本书很值得期待,我看过PDF版本的,那时候还没翻译出来,翻译的也一般,不过作者是巨牛逼的,听说对css理解的就像自己的左右手,光靠写CSS 他年薪就轻松百万了。。汗颜!思路清晰,图文并茂,还解决一些疑难杂症和高级技巧,类似于JS的语言精粹了,大神级别。 
好了,差不多就推荐到这里,CSS这基本是基于情怀,罗列一下,买不买都没必要,想当年我学CSS 是靠着几个仅有的视频,一个属性一个属性的练习,还有IE6 各种兼容问题,虐到爆,那酸爽(现在你们是幸运的,基本不用兼容IE6 这个老东西了)。 
真正起到决定作用的,还是JS语言的掌握和实践,JS能力越强 基础越稳固,你的前端能力就会越好, 自然薪资越高,所以现实点说大家,大家一起努力吧,让money 都到碗里来! 
有些童鞋认为:从来不需要买纸质书,我全程PDF就行了嘛,不过我建议有些书还是要纸质的,这样有感觉,也可以做笔记,甚至随时当工具书字典来查询,由于前端的特殊性和js语言的属性之繁多庞杂,我建议你还是要买纸质的书,帮助很大。

其他 
再为大家奉上我手里整理出来的一些资料~

★越多,难度越高。

CSS 
CSS权威指南 (第3版)★★

精通CSS ★★★

HTML & CSS设计与构建网站 ★

JavaScript 
JavaScript & jQuery交互式Web前端开发 ★

JavaScript DOM编程艺术 (第2版)★

JavaScript高级程序设计(第3版)★★

锋利的jQuery ★★

高性能JavaScript ★★★

JavaScript语言精粹 ★★★

JavaScript权威指南 ★★★

编写可维护的JavaScript ★★★

JAVASCRIPT语言精髓与编程实践 ★★★

Effective Javascript ★★★

Secrets of the JavaScript Ninja ★★★

JavaScript模式 ★★★

JavaScript设计模式 ★★★★

基于MVC的JavaScript Web富应用开发 ★★★

这个文章花费了我不少时间整理收集,然而还是不到冰山一角,至少入门够用了,所以请看到的同学,尽心收藏并帮助传播,可以帮到更多的新人和疑惑中的转型的从业者,我将会非常高兴和欣慰,也将有更大的动力和精神来继续更新和贡献微薄之力。

后记

有人问我:又没人给你钱,你何必这么辛苦,还得工作,还得写文章。然而我说我不在乎钱那是不可能的,我还告诉你们,这真的是我的兴趣和责任,因为我经历了前端洪荒的年代和苦楚,所以我很愿意分享和帮助新来者,少走弯路和浪费时间。 
到最后:兴趣都会变成钱!坚持下来就好。也希望大家支持! 
能在江湖混迹多年的,肯定不是靠工具和潮流,绝对是靠的不断提升的内功。 
希望大家明白,趁年轻 一定要忍住枯燥,打好基础!

薪资那么高的Web前端,你该怎么学?的更多相关文章

  1. 毕业生想学习web前端,应该怎么学才能最快找到工作?

    首先无论你要学习任何技能,必须有一个清晰的版图,什么是清晰的版图呢?首先了解你学的技术将来要从事什么工作,这个工作的条件是哪些? 然后你要有一个非常清晰的学习大纲,切记学习任何东西都要系统,不可胡乱的 ...

  2. 学web前端一定要这样学,不然学完找不到工作哭都来不及!

    因为工作原因,经常关注有关互联网行业的最新动态.这不,刚送走了高考,又迎来了每年的毕业季,看到好多人都说今年的前端工作不好找,很多童鞋简历投了一大堆,也没有回应,发现连实习的机会都没有,好不容易去面试 ...

  3. 想转行做web前端工程师,必学这6大技能

    web前端工程师是近几年才发展出来的新兴职业,也是目前火爆且高薪的职业.大需求的市场环境下,出现了越来越多的人群转行做web前端工程师,如设计师.后台程序员.网虫.大学其他专业.策划.编辑等等. 要学 ...

  4. 想转行做web前端工程师,必学这5大技能!知道是那些吗?

    web前端工程师是近几年才发展出来的新兴职业,也是目前火爆且高薪的职业. 大需求的市场环境下,出现了越来越多的人群转行做web前端工程师,如设计师.后台程序员.网虫.大学其他专业.策划.编辑等等. 要 ...

  5. 几款常用的高质量web前端框架

    http://blog.csdn.net/qianduankuangjia/article/details/78042944

  6. 2020年全新web前端学习路线图,学完就业20K!

    第一阶段:HTML5+css 配套学习视频: 前端小白零基础入门HTML5+CSS3 第二阶段:移动web网页开发 移动web进阶教程 第三阶段:JavaScript网页编程 前端与移动开发基础入门到 ...

  7. 超硬核 Web 前端学霸笔记,学完就去找工作!

    文章和教程 Vue 学习笔记 Node 学习笔记 React 学习笔记 Angular 学习笔记 RequireJS 学习笔记 Webpack 学习笔记 Gulp 学习笔记 Python 学习笔记 E ...

  8. Java与Web前端发展前景及薪资对比

    Web前端和Java谁的薪资待遇高?关于这个问题,是很多网友都感兴趣的,在各大论坛贴吧上也看到了不少类似的问题. 现在的互联网行业飞速发展,因此有很多小伙伴想要进入IT行业分一杯羹,但是关于学习什么技 ...

  9. 学web前端开发有前途吗

    web前端开发现在如此火爆,可以说是引领了IT培训行业的一个潮流,那么web前端开发都要学些什么知识呢?为什么这么火有前途吗?现在行业很需要这种人才吗?还是大家盲目跟风,随大流,下面小编对web前端做 ...

随机推荐

  1. 201521123026《JAVA程序设计》第11周学习总结

    1. 本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 1.多线程同步:限制某个资源在同一时刻只能被一个线程访问.. 2.同步代码块:`synchronized(lock ...

  2. mysql:视图,触发器,事务,存储过程,函数

    一.视图 视图是一个虚拟表并不是(正实存在的) 创建老师表 create table teacher( id int primary key auto_increment, tname varchar ...

  3. Java并发编程 Volatile关键字解析

    volatile关键字的两层语义 一旦一个共享变量(类的成员变量.类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: 1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了 ...

  4. Django中的信号及其用法

    Django中提供了"信号调度",用于在框架执行操作时解耦. 一些动作发生的时候,系统会根据信号定义的函数执行相应的操作 Django中内置的signal Model_signal ...

  5. MyBatis学习(五)resultMap测试

    resultMap是MyBatis最强大的元素,它的作用是告诉MyBatis将从结果集中取出的数据转换成开发者所需要得对象. 接下来我们对resultMap进行一个简单测试.(当所需要返回的对象是一个 ...

  6. 去掉 Warning:$HADOOP_HOME is deprecated

    修改配置文件/etc/profile,增加环境变量HADOOP_HOME_WARN_SUPPRESS=1, 保存退出,再次启动hadoop,就不会出现警告信息了

  7. 深入浅出AQS之独占锁模式

    每一个Java工程师应该都或多或少了解过AQS,我自己也是前前后后,反反复复研究了很久,看了忘,忘了再看,每次都有不一样的体会.这次趁着写博客,打算重新拿出来系统的研究下它的源码,总结成文章,便于以后 ...

  8. SVG轨迹回放实践

    最近做了埋点方案XTracker的轨迹回放功能,大致效果就是,在指定几个顺序的点之间形成轨迹,来模拟用户在页面上的先后行为(比如一个用户先点了啥,后点了啥).效果图如下: 在这篇文章中,我们来聊聊轨迹 ...

  9. mxnet的训练过程——从python到C++

    mxnet的训练过程--从python到C++ mxnet(github-mxnet)的python接口相当完善,我们可以完全不看C++的代码就能直接训练模型,如果我们要学习它的C++的代码,从pyt ...

  10. EXIT_SUCCESS EXIT_FAILURE

    在vc++6.0下头文件stdlib.h中定义如下: /* Definition of the argument values for the exit() function */ #define E ...