前端共享桌面_2020 前端学习路线总结,哎呦,不错哦!

e41579ba4bb2e1c250cbb503011673f1.png

2020 前端学习路线总结

在 GitHub 看到一个很不错的前端学习路线图(roadmap),从前端基础到前端工程化,再到跨端,都有知识点的覆盖,非常推荐阅读。

201aa7929c0e3070dfaec9ea307ed0bf.png

图下面是我翻译的一个文字版,可以先看图再看文字。
✔︎ 表示个人推荐学习
✔︎ 表示可选择学习
✔︎ 表示不需要严格按照路线的先后顺序,可在任何时间补充这一块的知识
✘ 表示个人不再推荐

计算机网络

掌握计算机网络的基础是一名前端工程师的基本素养,建议先学习以下的知识:

  1. ✔︎ Internet 如何工作
  2. ✔︎ HTTP 协议
  3. ✔︎ 浏览器工作机制
  4. ✔︎ DNS 及其运行机制
  5. ✔︎了解域名、网站托管

HTML

  1. ✔︎ 学习 HTML 基础,标签、元素、表单验证等等
  2. ✔︎ 语义化标签
  3. ✔︎ 了解 Web 无障碍(Accessibility)
  4. ✔︎ 学习 SEO 优化

CSS

  1. ✔︎ 学习 CSS 基础
  2. ✔︎ 制作布局:浮动、定位、显示、盒模型、网格布局、弹性布局
  3. ✔︎ 响应式设计和媒体查询(@media)
  4. ✔︎ 结合 HTML 制作一个简单的网页作为最佳实践

JavaScript

  1. ✔︎ 学习语法和基本结构
  2. ✔︎ 学习操作 DOM
  3. ✔︎ 学习 Fetch API / Ajax(XHR)
  4. ✔︎ ES6+ 和模块化 JavaScript
  5. ✔︎ 了解变量提升、事件冒泡机制、作用域、原型、Shadow DOM、严格模式等概念

版本控制

  1. ✔︎ Git 的基本操作
  2. ✔︎ 创建账号并且学习使用 GitHub
  3. ✔︎ 创建账号并且学习使用 GitLab

Web 安全知识

  1. ✔︎ HTTPS
  2. ✔︎ 内容安全策略(CSP)
  3. ✔︎ 跨域资源共享
  4. ✔︎ OWASP 安全风险

上面的内容是前端最基础的部分,建议多花时间,掌握好每一个知识点。

从这开始,将进入前端工程化的部分,你可能会接触到很多种不同的框架,并学习使用多种的工具为自己的开发提效。

包管理工具

npm 和 yarn 都很好,选择一个学习即可,他们两是相似的

  1. ✔︎ npm
  2. ✔︎ yarn

CSS 构架

通过使用现代的 CSS 框架和 CSS-in-JS 的书写方式,不用再担心 CSS 的构架问题,但熟悉 BEM 规范是一个不错的选择。

  1. ✔︎ BEM,一种书写规范
  2. ✘ OOCSS
  3. ✘ SMACSS

CSS 预处理器

以下三个可选择一个进行学习。

  1. ✔︎ SCSS
  2. ✔︎ PostCSS
  3. ✔︎ Less

构建工具

  1. 任务执行器
  • ✔︎ npm scripts
  • ✘ Gulp

2.代码检查和格式化工具

  • ✔︎ Prettier 代码格式化
  • ✔︎ ESLint 代码检查
  • ✘ StandardJS

3.模块打包

  1. ✔︎ Webpack
  2. ✔︎ Rollup
  3. ✔︎ Parcel

前端框架

前端框架推荐先学习 React,能理解函数式编程和组件化。Vue 的特点是上手快,中文文档齐全,可以选择性的学习。

  1. ✔︎ React.js
  • ✔︎Redux
  • ✔︎ MobX

2.✔︎ Vue.js

    • VueX

3.✔︎ Angular

    • RxJS
    • NgRx

现代 CSS

  1. ✔︎ Styled Component
  2. ✔︎ CSS Module
  3. ✔︎ Styled JSX
  4. ✔︎ Emotion
  5. ✘ Radium
  6. ✘ Glamorou

Web 组件

  1. ✔︎ HTML 模版
  2. ✔︎ 自定义元素
  3. ✔︎ Shadow DOM

CSS 框架

CSS 框架有两种,一种是基于 JavaScript 框架开发的应用程序。推荐的框架有:

  1. ✔︎ Reactstrap
  2. ✔︎ Material UI
  3. ✔︎ TailWind CSS
  4. ✔︎ Chakra UI

另外一只是纯 CSS 框架,默认和不和 JavaScript 组件一起使用。

  1. ✔︎ BootStrap
  2. ✔︎ Materialize CSS
  3. ✔︎ Bulma

测试

在这里你需要学习使用下面的框架进行单元、集成和功能测试。

  1. ✔︎ Jest
  2. ✔︎ react-testing-library
  3. ✔︎ Cypress
  4. ✔︎ Enzyme

类型检查器

  1. ✔︎✔︎ TypeScript
  2. ✘ Flow

上面是前端工程化的学习内容,接下来的内容涉及到性能、服务端渲染以及跨端,这一部分前端也叫被称作「大前端」。

PWA

  1. ✔︎ 学习 PWA 中使用到的 Web API:
  • Storage
  • Web Sockets
  • Service Workers
  • 定位
  • 通知
  • 设备方向
  • 支付、证书等等

2.✔︎计算、测量以及提高性能:

  • PRPL 模式
  • RAIL 模式
  • 性能指标
  • 学习使用 LightHouse
  • 学习使用 DevTools

服务端渲染

  1. ✔︎ Next.js (React.js)
  2. ✔︎ Nuxt.js (Vue.js)
  3. ✔︎ Universal(Angular)

✔︎ GraphQL

  1. ✔︎ Apollo
  2. ✔︎ Relay Modern

✔︎ 静态网站生成

  1. ✔︎ Next.js
  2. ✔︎ GatsbyJS
  3. ✔︎ Nuxt.js
  4. ✔︎ Vuepress
  5. ✔︎ JekyII
  6. ✔︎ Hugo

✔︎ 移动端应用开发

  1. ✔︎ ReactNative
  2. ✔︎ Flutter

✔︎ 桌面应用开发

  1. ✔︎ Electron
  2. ✔︎ Carlo
  3. ✔︎ Proton Native

✔︎ WebAssembly

总结完毕,不由得感叹前端生态真是丰富多彩,要学的东西很多,自己不懂的也很多,有些知识点也是浅尝辄止。虽然有这么多的方向,但还是需要找到一个点能够深挖。

如果你是前端的初学者,也不要被这些框架给吓到,学好基础然后加以实践更为重要。

上面推荐的 Roadmap GitHub 仓库里也有后端以及 DevOps 的学习路线,可以自行浏览,如果有时间我也会整理出一版文字版以供大家参阅。

Keep Learning,持续精进。

web的前端:最详细的web前端学习攻略,直接收藏吧!​zhuanlan.zhihu.com
00ef5ee95b7e289e8a568a53f1cd5b29.png
作者:mydev
链接:https://juejin.im/post/6895203865336119304
来源:掘金

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365698.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每日一题题目16:简单的python练习题(1-10)

#1.python程序中__name__的作用是什么?__name__这个系统变量用来表示程序的运行方式. 如果程序在当前膜快运行,__name__的名称就是__main__, 如果不在(被调用),则显示为导入模块的名称.扩展:常常这样写if __name__ "__main__":来表名这是整个工程开始运行的入口.效…

Confluence 6 高级性能诊断

请在你的系统服务请求中包括下面所有的信息,如果可能的话,你也可以在请求中包括你认为最有可能出现的问题。这样的话,可以避免我们进一步对你系统的问题进行询问。 系统信息 Confluence 服务器 你系统信息的屏幕截图 Confluences Administrat…

RequireJS使用注意地方

使用RequireJS做异步模块加载,有几点值得注意的地方: 1.模块定义两种写法 1. 存在依赖的函数式定义 如果模块存在依赖:则第一个参数是依赖的名称数组;第二个参数是函数,在模块的所有依赖加载完毕后,该函…

WildFly上具有AngularJS的Java EE 7和Java WebSocket API(JSR 356)

这篇博客文章描述了用于WebSocket协议的Java API(JSR 356) (这是Java EE 7平台的四个最新JSR之一),并提供了部署在WildFly 8上并可以在OpenShift上在线获得的具体应用程序。 [FR]版本的法语( HTML或PDF &a…

用python做自我介绍_python入门教程NO.2 用python做个自我介绍

本文涉及的python基础语法为:数据类型等数据类型1. 字符串的拼接我们在上一章中已经简单介绍了一下字符串的创建方式,这里我们简单学习一下字符串的运算和拼接。字符串的运算字符串的加法#把字符串:hello赋值给变量aa hello#把字符串&#x…

想清楚映射规则,栈、队列、双端队列的实现都差不多

今天开始,啃读算法导论第10章。既然是啃就要有啃的样子,我决定将例题和习题全部用C实现一遍,总结同一类问题的共性。 10.1节介绍了栈,队列,双端队列及一些组合形式,为了突出体现思路,让代码更加…

日期加减加1天_2小时整理了13个时间日期函数,动图演示简单易学,收藏备用吧...

Hello,大家好,今天跟大家整理汇总了13个工作中经常用到的日期与时间函数的使用方法,学会它们几乎可以解决所有工作中遇到的,关于日期与时间提取与转换的问题。话不多说,让我们直接开始吧一、了解时间与日期的本质工作中…

T-1-java语言基础

一、Linux的由来和发展Linux是开源的操作系统Linux是服务器端的操作系统java主要用于服务器端二、Linux目录结构(与Windows不同)文件系统不同:Windows是盘符,Linux是目录。外部设备映射不同:Windows是盘符,…

点云数据显示_vispy 显示 kitti 点云数据

国内博客找了一圈,居然没有发现有用 vispy 做可视化的代码,这里做一个简单的示例,代码大部分来自官方。import numpy as np import vispy.scene from vispy.scene import visuals import sys# Make a canvas and add simple view canvas vis…

python函数定义关键字_Python(2)深入Python函数定义

在Python中,可以定义包含若干参数的函数,这里有几种可用的形式,也可以混合使用:1. 默认参数最常用的一种形式是为一个或多个参数指定默认值。>>> def ask_ok(prompt,retries4,complaintYes or no Please!):while True:ok…

稳定婚姻(tarjan)

传送门 这道题一开始可能以为是二分图匹配……?不过后来发现和二分图没啥大关系。 简单分析之后发现,把夫妻之间连边(男性向女性连边),之后再将每对曾经是情侣的人连边(女性向男性连边)&#xf…

Webpack 常用命令总结以及常用打包压缩方法

前言:Webpack是一款基于node的前端打包工具,它可以将很多静态文件打包起来,自动处理依赖关系后,生成一个.js文件,然后让html来引用,不仅可以做到按需加载,而且可以减少HTTP请求,节约…

在Spring MVC Web应用程序中添加社交登录:单元测试

Spring Social 1.0具有spring-social-test模块,该模块为测试Connect实现和API绑定提供支持。 该模块已从Spring Social 1.1.0中删除,并由 Spring MVC Test框架替换。 问题在于,实际上没有有关为使用Spring Social 1.1.0的应用程序编写单元测…

CSS3 Filter详解(改变模糊度 亮度 透明度等方法)

文章目录 1.模糊2.灰度3.亮度4.对比度5.饱和度6.色相旋转7.反色8.阴影9.透明度10.褐色CSS3 Filter(滤镜)属性提供了提供模糊和改变元素颜色的功能。CSS3 Fitler 常用于调整图像的渲染、背景或边框显示效果。 -webkit-filter是css3的一个属性,…

laravel中使用offsetSet

首先不用offsetSet方法,使用laravel的硬添加属性如下: 下边使用offsetSet 转载于:https://www.cnblogs.com/qaing123/p/9672241.html

python做自动化控制postman_使用postman+newman+python做接口自动化测试

postman是一款API调试工具,可用于测试接口,相类似的工具还有jmeter、soupUI。通过postmannewmanpython可以批量运行调试接口,达到自动化测试的效果。1、PostMan安装共有两种方式,一种是chrome浏览器上的插件,一种是pos…

转3d视图快捷键_最全Solidworks快捷键,值得收藏!

SOLIDWORKS软件提供了很多实用的快捷键,如果我们熟练掌握这些快捷键无疑可以减轻工作强度和提高工作效率。当然我们也可以点击【工具】-【自定义】-【键盘】,自己定义一些快捷键。本文为大家整理一些常用的快捷键,多使用快捷键可以帮助我们节…

构建前端自动化工作流环境

目标:建一个自动化工作流环境 自动编译 自动合并 自动刷新 自动部署 工作流: 1 全局安装webpack 执行命令: npm install webpack webpack-cli -g 其中webpack-cil 是命令接口工具 2 初始化当前项目:npm init 然后一路回车…

大型布线:Java云应用程序缺少的技术

您是否曾经想过,为什么大多数Java框架中的依赖项注入仅用于本地进程内服务而不是分布式服务? 我最近在2013年EMC世界大会上遇到了Paul Maritz的主题演讲 (跳至第32分钟),这使我在云平台的背景下思考了这个问题。 主题…

【单镜头反光相机】CCD、CMOS

CCD、CMOS:图像传感器、电荷耦合器 CCD简介CMOS简介:①被动式 ,被动式像素结构(Passive Pixel Sensor.简称PPS),又叫无源式。 ②主动式,主动式像素结构(Active Pixel Sensor.简称APS…