[前端机汤] 学完这些去阿里!

1、HTML/HTML5基础

1.0、语义化H5标签
1.1、H5引进了一些新的标签,特别注意article、header、footer、aside、nav等,注意HTML的标题结构
1.2、理解浏览器解析HTML的过程,理解DOM的树形结构,及相应API
1.3、理解HTML标签在各个浏览器上的默认样式(代理样式),理解CSS中的重置样式表的概念
1.4、理解Canvas、SVG、video等功能性标签
1.5、理解form、iframe标签,理解文件提交过程
推荐书籍:
A、《HTML5秘籍》

2、高健壮性CSS

2.1、学习基础知识,包括大部分常用属性、选择器的用法,要对大多数标签有个基础概念,在日常使用的基础上,尝试学习浏览器兼容性问题,要知道兼容性的主要问题及解决方法
2.2、深入理解盒子模型,区分块级元素、行内元素,有几个比较重要的属性:display、float、position,一定要弄清楚区分盒子、行内盒子的概念另外可以考虑学一些预编译语言:sass、less,都很简单
2.3、学习常用框架,可以使用bootstrap构建项目
2.4、学习框架的代码组织方式包括:12格栅系统、组件化、组件的风格化等
2.5、学习CSS 3的新功能,特别是动画效果、选择器
2.6、认真学习一些CSS对象化思想,学习编写简洁性、高复用性、高健壮性的CSS
2.7、有空的话,可以看看所谓的扁平化设计,还有简洁性
2.8、理解CSSOM、render、reflow、CSS性能、CSS阻塞概念
学习方法:
1、多看别人的代码,一些设计的不错的网站就是很好的学习素材,比如拉勾网
2、一定要学会使用grunt、gulp压缩CSS
3、display + position + float 可以组合出很复杂的效果,多想想盒子模型
4、尝试在不用float,且position不为absolute的情况下实现等高、等宽等布局
推荐书籍:
1、《图灵程序设计丛书:HTML5与CSS3设计模式》
2、《Web开发技术丛书:深入理解Bootstrap》
3、《高流量网站CSS开发技术》
4、《CSS设计彻底研究》 这个一定要
5、《Web开发技术丛书:深入理解Bootstrap》
6、可以找一些专门讲SASS的书,但是我没找到
7、《CSS权威指南(第3版)》

3、深入学习JS

3.1、重新学习JS语法,注意:表达式(特别是函数访问表达式)、语句、类型(包括类型判断)注意,这个时候主要倾向于“原生”JS哦,不要使用框架
3.2、深入理解JS的“一级函数”、对象、类的概念,学会使用函数来构造类、闭包,学会用面向对象的方式组织代码
3.3、深入理解JS的作用域、作用域链、this对象(在各种调用形式中,this的指向)理解函数的各种调用方法(call、apply、bind等)
3.4、理解对象、数组的概念
理解对象的“[]”调用,理解对象是一种“特殊数组”
理解for语句的用法
深入理解JS中原始值、包装对象的概念(重要)
3.5、学习一些常用框架的使用方法,包括:JQUERY、underscore、EXTJS,加分点有:backbone、angularjs、ejs、jade
通过比较多个框架的使用方法,想清楚“JS语言极其灵活”这一事实
总结常见用法,提高学习速度
学习模块化开发(使用require.js、sea.js等)
3.6、适当看一些著名框架的源码,比如jQuery(不建议看angularjs,太复杂了)
重要的是学习框架中代码的组织形式,即设计模式
3.7、了解JS解释、运行过程,理解JS的单线程概念
深入理解JS事件、异步、阻塞概念
3.8、理解浏览器组成部件,理解V8的概念
学习V8的解释-运行过程
在V8基础上,学会如何提高JS性能
学会使用chrome的profile进行内存泄露分析
学习方法:
1、提高对自己的要求,要有代码洁癖
2、适当的时候看看优秀框架的源码,特别是框架的架构模式、设计模式
3、多学学设计模式
4、学习原生JS、DOM、BOM、Ajax
推荐书籍:
1、《O‘Reilly精品图书系列:?JavaScript权威指南(?第6版)》 必看
2、《JavaScript设计模式》
3、《WebKit技术内幕》
4、《JavaScript框架高级编?程:应用Prototype YUI Ext JS Dojo MooTools》
5、《用AngularJS开发下一代Web应用》
6、跨终端
6.1、理解混合APP的概念
6.2、理解网页在各类终端上的表现
6.3、理解网页与原生app的区同,重在约束
6.4、理解单页网站,特别要规避页面的内存泄露问题
6.5、入门nodejs,对其有个基础概念,知道它能做什么,缺点是什么
推荐书籍:
1、《单页Web应用:JavaScript从前端到后端 》
2、《Web 2.0界面设计模式》
3、《响应式Web设计:HTML5和?CSS3实战》
5、工具
学会使用grunt进行JS、CSS、HTML 压缩,特别是模块化js开发时候的压缩
会用PS进行切图、保存icon
入手sublime、webstorm
学会使用chrome调试面板,特别是:console、network、profile、element



进阶

4、性能

1.1、理解资源加载的过程
包括:TCP握手连接、HTTP请求报文、HTTP回复报文
1.2、理解资源加载的性能约束,包括:TCP连接限制、TCP慢启动
1.3、理解CSS文件、JS文件压缩,理解不同文件放在页面不同位置后对性能的影响
1.4、理解CDN加速
1.5、学会使用HTTP头控制资源缓存,理解cache-control、expire、max-age、ETag对缓存的影响
1.6、深入理解浏览器的render过程
推荐书籍:
1、《Web性能权威指南》
2、雅虎网站页面性能优化的34条黄金守则

5、http及TCP协议族

2.1、学习http协议,理解http请求-响应模式
2.2、理解http是应用层协议,它是构建在TCP/IP协议上的
2.3、理解http报文(请求-响应报文)
2.4、理解http代理、缓存、网关等概念,指定如何控制缓存
2.5、理解http协议内容,包括:状态码、http头、长连接(http1.1)
2.6、学习http服务器的工作模型,对静态文件、CGI、DHTML的处理流程有个大致概念
推荐书籍:
1、《HTTP权威指南》
2、《TCP/IP详解》
3、《图解TCP/IP(第5版)》

6、安全性

XSS、SQL注入

时间: 2024-10-10 16:20:58

[前端机汤] 学完这些去阿里!的相关文章

2019年前端工程师应该学什么?

参加工作三年多了,最近业务不是很忙,心里反而空落落的.最近参与了一个公司UI库开发,发现自己不懂的东西实在太多.以此为契机吧: 1. 有必要把近两年的经验知识沉淀一下,与标准和文档进行一一印证,查漏补缺. 2. 工具不仅要会用,用的好,还要知道原理. 3. 即便是有些知识暂时用不到,作为一名有点追求的工程师,应该提前做一些知识储备. 写到此处惊觉自己这两三年在技术上还是成长了的,2016年我需要看着前辈们的分享,大家说有用我就学,听前辈的总没错,2019年我可以根据自己的经验和体会总结出该怎么去

python学完之后能做哪些工作

什么是Python,网络给出的解释是一种面向对象.解释型计算机程序设计语言. Python有许多优点,最明显的是语法简洁而清晰和具有丰富和强大的类库.经常被称为胶水语言,是因为它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起.常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库.健简而

web前端到底怎么学?干货资料!

hi,大家好! 我的第一篇文章:[web前端到底是什么?有前途吗?],在我没想到如此 'HOT' 的情况下 得到很多好评和有效传播. 也为我近期新开的 个人前端公众号:前端你别闹(webunao) 直接增加了几百粉(果然,帅的人大家都喜欢.) 被国内著名技术博客 CSDN 推上博客首页,并且经过我授权在其他公众号也转载了不少. 我觉得我这片入门文章可以小火,究其原因 有以下几点 web前端是如此的火热,关注度也逐年升高 由于前端开发的火热 和 一些IT巨头公司 对 web前端开发 人员的需求旺盛

web前端入坑第二篇:web前端到底怎么学?干货资料! 【转】

http://blog.csdn.net/xllily_11/article/details/52145172 版权声明:本文为博主[小北]原创文章,如要转载请评论回复.个人前端公众号:前端你别闹,JS前端实用开发QQ群 :147250970 欢迎加入~! 目录(?)[+] hi,大家好! 我的第一篇文章:[web前端到底是什么?有前途吗?],在我没想到如此 ‘HOT’ 的情况下 得到很多好评和有效传播. 也为我近期新开的 个人前端公众号:前端你别闹(webunao) 直接增加了几百粉(果然,帅

java学完框架后学什么?java架构师进阶学习,java高并发集群分布式,java大数据高可用,视频教程,

学习思路: 1.先学习第一套或者第二套架构师课程,帮助没有基础或基础学得不好的同学建立架构师思维,整套需要全部学习,很重要!! 2.根据工作需要,分别去学习第二套.第三套里的实战课程里的知识点,不需要全部全学习,那么多资料你没有那么多精力全部学完!! 对比内容: 本套课包含像Dubbo,Netty,Nio,Mina,Mecached,Nosql,MongoDB, Nginx, ActiveMQ等课程更全,我这里就不一一列举,亲们可以对比大小 本教程优势: 1.六套 架构师课程,基本包含了淘宝卖的

软件工程作业2.1:阐述对软件工程的理解,学完这门课自己能学到什么,学完后能做什么

对软件工程这门课的理解 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程.在软件工程中,远远不止很多人以为的只是单纯地进行软件开发,其实真正的软件开发的时间只是软件工程中的一部分而已.软件工程还包括了需求分析,绘制各种软件模型图,架构软件模型,从整体上来考虑如何架构好整个软件体系,既要考虑软件的性能和稳定,可靠,还要考虑用户体验,考虑后续的可维护性等方方面面,可以说是一个重大的工程.软件开发阶段前还要确定好实现的各种数据结构和算法才能去真正地进行编码.同时在开发过程中

C/C++要学什么东西?C/C++学完能干什么?学了又能当饭吃吗?

前言 普遍问题 学校的课程设计不完善,涉及面广,什么都不深入. 老师缺乏实际的工作经验,比如说我经常看到老师经常教学生做数学题之类的小程序,但是,实际工作中,我们并不玩这个. 在我看来,要学习某种编程语言,没必要去局限课堂,一方面是进度慢,另一方面,如果你要学习某种语言,关键在学而不在教,你的态度和决心是关键,只要你有决心,没人教也能学会,现在互联网这么发达,什么内容都可以找得到.但是,如果有人教,并且方法合适,肯定会快很多.好了说了这么多,先进入我们今天的主题:C/C++要学什么东西?C/C+

学完大数据基础,可以按照我写的顺序学下去

首先给大家介绍什么叫大数据,大数据最早是在2006年谷歌提出来的,百度给他的定义为巨量数据集合,辅相成在今天大数据技术任然随着互联网的发展,更加迅速的成长,小到个人,企业,达到国家安全,大数据的作用可见一斑,也就是近几年大数据这个概念,随着云计算的出现才凸显出其价值,云计算与大数据的关系就像硬币的正反面一样,相密不可分.但是大数据的人才缺失少之又少,这就拖延了大数据的发展.所以人才培养真的很重要. 大数据的定义.大数据,又称巨量资料,指的是所涉及的数据资料量规模巨大到无法通过人脑甚至主流软件工具

学完Python好找工作吗?为什么有人学完找不到工作?

学完Python好找工作吗?很多人学了Python还是找不到工作,为什么?自己在学习Python,怕以后不好找工作,想问问前辈们,现在Python的工作好找吗?也看到很多人找不到Python工作,是为什么呢?创一个小群,供大家学习交流聊天如果有对学python方面有什么疑惑问题的,或者有什么想说的想聊的大家可以一起交流学习一起进步呀.也希望大家对学python能够持之以恒python爱好群,如果你想要学好python最好加入一个组织,这样大家学习的话就比较方便,还能够共同交流和分享资料,给你推荐