前端的技术体系
更多it学习课程:
网慕课全站,实战课金职位,Java工程师,Java架构师,Python全栈工程师,大数据开发工程师,人人都能学会数据分析等 大部分的课程都有 包更新 不到一折,需要ddd
链接:https://pan.baidu.com/s/1u-q_UirNAo9zHyE6ZbccSQ
提取码:Ayyk
对于前端技术体系这块,我把它主要分成了 6 个方面:
PC 端技术
移动端技术
服务端技术
优化技术
监控技术
工程化技术
而整个前端的体系也是针对这 6 个方面来去解释的。
部分技术点可能同时属于多个方面,这一类的技术点我就根据自己的理解放入到了我认为合理的位置了
PC 端技术
首先我们先来看 PC 端技术,对于现在的 PC 端来说,我们可以主要把内容分成两块:
以 jQuery 为代表的一系列高兼容性框架(或者说是库)
MVVM 框架,如 Angular、React、Vue(排名不分先后),这一块内容,以 Vue 为例进行解释
以 jQuery 为代表的一系列高兼容性框架(或者说是库)
这一类框架对于维护老系统的同学(以政府项目或国企项目为主 )来说应该非常的熟悉,虽然说现在越来越多的项目已经不再考虑兼容 IE9 这种老的浏览器了,但是对于一些老系统来说,因为历史遗留问题,或业务兼容问题,根本无法忽略掉 IE 浏览器的兼容。
所以说这一类的技术依然是无法被忽略的一块,毕竟 技术永远是为业务来进行服务的,虽然可能大家都非常讨厌这一块的内容。
以 Vue 为例的一系列 MVVM 框架
这一块是目前使用率最多,也是最被大家所接受的。它们大大的提高了前端的开发效率,并且增加了前端的开发壁垒。可以说没有它们,就没有现在的前端开发环境。
在现在如果你想要找一份前端的工作的话,那么这三大框架你至少要熟悉一个。
如果你是双非院校(非985、211)的话,那么我个人建议你学习 Vue,因为对于国内大部分的中小企业来说,Vue 的占有率是非常高的。
而如果你是 985、211 学校的话,那么 Vue 或者 React 均可。
对于 Angular ,因为在国内的占有率并不高,所以如果你是以找一份工作为主的话,那么我个人不建议你去专攻 Angular 。
它们中任何一个框架,整体的内容如果展开的话,那么都会非常的多。还是以 Vue 为例,周边知识大体可以分为三个大块:
根据渲染模式的不同,我们需要了解两部分:
单页应用:SPA
基于服务端的渲染:SSR
Vue 全家桶知识:
路由管理:VueRouter
全局状态管理:Vuex
脚手架工具:@vue/cli
组件库部分:
比如:Element-UI
比如:Vuetify
比如:vant-ui
当然除了这些之外,其他的周边库还有很多,比如 网络请求库:axios 等等,这些都是需要大家去进行掌握的。
移动端技术
对于移动端技术来说,目前主要有两个方向:
以 微信小程序 为代表的小程序技术
跨平台技术
那么对于移动端技术来说,我们也是以这两个方向来去说。
以 微信小程序 为代表的小程序技术
微信小程序在 2017 年发布,在 2018 年大火,整个的发展速度是非常快的。这也从一方面验证了 每间隔16个月,学习前端的难度会增加一倍 的这句话。整个前端无时无刻不再有新的技术、新的概念被提出,所以我觉得,前端开发工程师应该是站在潮流最前端的一批人。
小程序最初以 原生 的方式进行开发,后来逐渐出现了一批基于小程序的框架,如果你是一个小程序开发为主的前端工程师,那么以下知识点,你是必须要掌握的:
小程序原生开发
小程序框架开发(比如:wepy、mpvue)
小程序 UI 库(比如:WeUI、Vant weapp、iView weapp)
跨平台技术
跨平台技术的提出主要是为了解决 移动端设备碎片化 的问题,什么是 移动端设备碎片化 呢?给大家举个简单的例子:
目前移动端的设备,主要分成两块
1、Android
2、IOS
而对于任何一端来说,又分为 原生应用(APP) 和 网页应用 ,同时还多了一个 小程序(虽然小程序的设计之初也有为了解决 移动端设备碎片化 问题的原因) 。
如果我们为每一种应用方式都开发一个版本的话,那么我们就需要大约 4 个应用的维护。这样的一个成本是任何一家中小型企业都难以接受的。
所以大家一直期望,有一种方式可以开发一个应用,但同时运行在多个设备之中。
基于这种原因,才出现了所谓的跨平台技术。
跨平台技术的出现,旨在解决 一个项目无法同时作用于多种不同设备之上 的问题。所以在刚出现的时候市场上被接受和尝试的声音非常的多(毕竟这对于公司来说,代表省钱)。
不过,虽然这些技术号称可以达到原生应用同样的体验,但是因为不同设备之间的差异化,导致最终开发出来的成果总是无法满足线上项目的需求。
所以在目前跨平台的技术只是在小范围的进行使用。
整个跨平台技术方案中,目前主要流行的有以下 4 种:
React Native
Flutter
Weex
uni-app (一套代码编到8个平台)