热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

web前端升级之路

web前端菜鸟如何升级到大神(转载)标签:web前端web前端菜鸟如何升级到大神(转载)标签:web前端随着互联网的发展速度迅猛,web前端工程师越来越火热,想学习Web前端开发吗

web前端菜鸟如何升级到大神(转载)
标签:web前端

随着互联网的发展速度迅猛,web前端工程师越来越火热,想学习

Web前端开发

吗 ? 若想成为web前端工程师需要掌握哪些知识?今天小编总结了成为web前端工程师需要掌握的所有知识。

一、基础

1、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标签,理解文件提交过程

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阻塞概念

学习方法:

多看别人的代码,优秀的设计网站

要学会使用grunt、gulp压缩CSS

display + position + float 可以组合出很复杂的效果,多练习盒子模型

尝试在不用float,且position不为absolute的情况下实现等高、等宽等布局

3、深入学习

Javascript

3.1、重新学习JS语法,注意:表达式、语句、类型

主要倾向于“原生”JS哦,不要使用框架

3.2、深入理解JS的“一级函数”、对象、类的概念

学会使用函数来构造类、闭包,学会用面向对象的方式组织代码

3.3、深入理解JS的作用域、作用域链、this对象

理解函数的各种调用方法(call、apply、bind等)

3.4、理解对象、数组的概念

理解对象的“[]”调用,理解对象是一种“特殊数组”

理解for语句的用法

深入理解JS中原始值、包装对象的概念(重要)

3.5、学习一些常用框架的使用方法,包括:JQUERY、underscore、EXTJS,更高级的:backbone、angularjs、ejs、jade比较多个框架的使用方法,总结常见用法,提高学习速度学习模块化开发(使用require.js、sea.js等)

3.6、适当看一些著名框架的源码,比如jQuery重要的是学习框架中代码的组织形式,即设计模式

3.7、了解JS解释、运行过程,理解JS的单线程概念

深入理解JS事件、异步、阻塞概念

3.8、理解浏览器组成部件,理解V8的概念

学习V8的解释-运行过程

在V8基础上,学会如何提高JS性能

学会使用chrome的profile进行内存泄露分析

学习方法:

提高对自己的要求

多看优秀框架的源码,特别是框架的架构模式、设计模式

多学设计模式

学习原生JS、DOM、BOM、

Ajax

4、跨终端

理解混合APP的概念

理解网页在各类终端上的表现

理解网页与原生app的区同,重在约束

理解单页网站,特别要规避页面的内存泄露问题

入门nodejs,对其有个基础概念

5、工具 

学会使用grunt进行JS、CSS、HTML 压缩,特别是模块化js开发时候的压缩

会用PS进行切图、保存icon

入手sublime、webstorm

学会使用chrome调试面板,特别是:console、network、profile、element

二、进阶:

1、性能

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过程

2、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的处理流程有个大致概念

3、安全性

XSS、SQL注入

web前端升级之路


推荐阅读
  • 本文探讨了在一个物理隔离的环境中构建数据交换平台所面临的挑战,包括但不限于数据加密、传输监控及确保文件交换的安全性和可靠性。同时,作者结合自身项目经验,分享了项目规划、实施过程中的关键决策及其背后的思考。 ... [详细]
  • 深入理解:AJAX学习指南
    本文详细探讨了AJAX的基本概念、工作原理及其在现代Web开发中的应用,旨在为初学者提供全面的学习资料。 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 深入探讨前端代码优化策略
    本文深入讨论了前端开发中代码优化的关键技术,包括JavaScript、HTML和CSS的优化方法,旨在提升网页加载速度和用户体验。 ... [详细]
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
  • 本文详细探讨了在Web开发中常见的UTF-8编码问题及其解决方案,包括HTML页面、PHP脚本、MySQL数据库以及JavaScript和Flash应用中的乱码问题。 ... [详细]
  • 在现代Web开发中,HTML5 Canvas常用于图像处理和绘图任务。本文将详细介绍如何将Canvas中的图像导出并上传至服务器,适用于拼图、图片编辑等场景。 ... [详细]
  • 解决网页乱码问题的实用方法
    网页乱码问题在开发中较为常见,主要由文件编码、程序字符集设置和数据库连接字符集设置不当引起。本文将详细介绍如何逐一排查并解决这些问题。 ... [详细]
  • Requests库的基本使用方法
    本文介绍了Python中Requests库的基础用法,包括如何安装、GET和POST请求的实现、如何处理Cookies和Headers,以及如何解析JSON响应。相比urllib库,Requests库提供了更为简洁高效的接口来处理HTTP请求。 ... [详细]
  • 在尝试通过自定义端口部署Spring Cloud Eureka时遇到了连接失败的问题。本文详细描述了问题的现象,并提供了有效的解决方案,以帮助遇到类似情况的开发者。 ... [详细]
  • DirectShow Filter 开发指南
    本文总结了 DirectShow Filter 的开发经验,重点介绍了 Source Filter、In-Place Transform Filter 和 Render Filter 的实现方法。通过使用 DirectShow 提供的类,可以简化 Filter 的开发过程。 ... [详细]
author-avatar
王家刚163034
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有