初级前端:主要学习三个部分:HTML,CSS,JavaScript
一、html+css部分:
这部分特别简单,到网上搜资料,书籍视频非常多。css中盒子模型,流动,block,inline,层叠,样式优先级等这些自学起来也是非常容易。最后再深入了解下浏览器差异性,ie9以下兼容简单了解就行了,ie9以下浏览器被淘汰掉是趋势,低版本没必要浪费大量时间去学习兼容主流浏览器,googlechrome浏览器、firefox浏览器、safari浏览器、opera浏览器即可。浏览器差异内容很多,建议在实践中多多积累。
二、JavaScript部分。
1.基础学习:
难点,也是重点,要学的内容实在很多,如果没有其他编程语言的基础的话,学起来可能要费些力,有很多比较抽象的概念,必须要深入理解,比如闭包、原型、面向对象、封装等,要理解透彻。看书是必不可少的,找一本优秀的js书从头到尾,反复研究学习,第一遍可以快速翻阅,大体知道了解概念即可,第二三遍就需要深入学习了。另外,js面向对象编程必须要学习,非常重要,个人推荐一本书,StoyanStefanov著,凌杰译的《javascript面向对象指南》。边学边练,实践出真知。
2.jQuery学习:
这些基础知识掌握好之后,还需要学jQuery,这是一个非常优秀的Javascript库,大型开发必备。它简化了Javascript的复杂操作,消除了Javascript跨平台兼容问题,提供了大量实用方法,有良好的文档和帮助手册,是一个非常成熟的Javascript库。学习方法也很简单,照着产品文档做几个页面就行了,不用面面俱到,以后遇到问题查文档就行了。
大概流程就是这样,如下图所示:
3.进阶学习:
有了以上知识,对于大多数小型网站,你应该已经可以写出能够工作的代码了。但要想成为更专业的前端,你还需继续努力。更高的要求大概还有四方面:易维护,可测试,高性能,低流量(移动端)。
中高级前端
1.工具学习:大型项目中,前端代码构建已经不是简单的压缩一下了,依赖管理、模块合并、各种编译步步不可缺少,需要学会使用grunt、gulp等前端构建工具,要学习的还有:包管理器bower、npm,代码优化CSSLint、JSHint、JSLint,CSS预处理器less、sass,代码管理及版本控制svn、Git,web框架/服务器Node、Express,代码规范、HTML模块化、css模块化。
2.布局框架学习如Bootstrap。
3.新技术html5学习。
4.js框架学习,requireJS、AngularJS等,往前端架构师靠近。
5.nodejs学习。
下图非常好的表达了高级前端工程师需要学习的内容:
到招聘网站,参考任聘要求,准没错,举例如下
1.精通html和css,能制作符合W3C标准的静态页面;
2.精通JavaScript编程,对面向对象编程思想有深刻理解;
3.精通主流Javascript库/框架jQuery;
4.理解并掌握JavaScript语言核心技术DOM、BOM有Javascript性能优化经验;
5.对浏览器兼容性有深入的研究,精通各种浏览器问题;
6.了解Backbone.js、AngularJs等MVC框架并有实际项目开发经验;
7.了解asp.net等服务器后台技术和拥有一定的C#编程能力者优先;
8.对交互体验、可用性、用户体验有一定程度的理解;
9.有良好的责任心和团队合作能力、能承受较大的压