共计 3872 个字符,预计需要花费 10 分钟才能阅读完成。
前言
又到了年底,想简略谈谈这一年前端的倒退,以及 21 年可能会呈现的一些趋势。毋庸置疑,2020 年的确是不平庸的一年,对前端来说,私认为能够用“大前端继续深耕,泛前端兼容并包”这十四个字来形容。这里须要明确一下我对“大前端”以及“泛前端”这两个概念的了解:首先大前端能够分为狭义的“大前端”和广义的“大前端”,市面上常说的大前端次要分为这两类,所谓狭义的“大前端”是指以前端技术解决所有本属于其余畛域问题的前端技术,这里其实是蕴含了后边所说的泛前端的概念,也就是说只有是应用前端技术去解决的都能够定义为“大前端”;而广义的“大前端”是仅指垂直到后端畛域的前端技术,其代表是以 node.js 为主的扩大的去解决后端畛域的技术,如呈现了诸如 express、koa、egg、nest 等等配套的后端技术框架,甚至呈现了 node 的微服务框架,我这里不做阐明仅指广义的“大前端”概念。对于“泛前端”,这个概念没有歧义,通常指的都是跨端技术,比方客户端、桌面端,甚至 HUB 等等,上图中所示的仅仅指一部分框架,并未收录齐全,毕竟 js/ts 的社区切实太太太太沉闷了,上面简略分说一下“大前端”和“泛前端”集体的一些见解,是以前端三大框架 Vue、React、Angular 为外围进行横向和纵向的框架探讨
泛前端技术框架探讨
Vue | React | Angular | |
---|---|---|---|
web 端 | Vue 全家桶 | React 全家桶 | Angular 全家桶 |
桌面端 | Electron/Nw | Electron/Nw | Electron/Nw/Cordova/Ionic |
原生挪动端 | Weex | React Native | Cordova/Ionic |
小程序端 | uniapp/mpvue/mapx | taro/Rax | 无 |
大前端技术框架探讨
Vue | React | Angular | |
---|---|---|---|
web 端 | Vue 全家桶 | React 全家桶 | Angular 全家桶 |
SSR | Nuxt | Next | Universal |
服务端 | 无特定 | 无特定 | 可配合 Nest |
往年阿里前端练习生打算将前端畛域划分了七大方向,别离是工程化方向、前端中后盾方向、Node.js 方向、跨端技术方向、互动技术方向、可视化技术方向、前端智能化方向,集体认为 Node.js 是一个整体的前端根底,并不能单算做一个方向,因此我将其替换为音视频方向,私认为可将前端方向划分为以下几种,上面我将在这几个不同的方向维度进行集体的一些论述和高见:
- 中后盾方向:微前端
- 可视化方向:antv
- 智能化方向:imgcook
- 互动方向:Eva
- 音视频方向:wasm
- 工程化方向:severless、全链路工程
- 跨端方向:kbone、rax
中后盾方向
- 对于中后盾方向,这是传统 web 方向,对于前端来说,2020 年对于微前端的落地利用已有很多实际。因而,私认为微前端会作为将来前端大型利用的一种趋势,对于不同团队的不同技术栈的汇总整合是一个比拟好的计划,尽管不同于服务端的那种微服务能够微的很彻底,然而前端加持着 ts 等的个性也是能够实现微化的成果,从而优化工时,晋升效率,防止反复劳作;
- 既然第一点提到了 ts,那这里我想说一说对于 ts 的问题,在 19 年我对 ts 的态度尚存张望,但在往年,我认为 ts 能够作为一种必备技能来考查和实际,并不是因为大家都在用,而是因为随着工夫的倒退,当初前端要承载的能力越来越重,我的项目也越来越大,ts 能够很好的约定,对于前期的保护以及批改都能够很好的限度,对于大型团队、大型项目来说,ts 是不二之选;另外,如果有团队真的要去开发服务端,那我真的倡议你去用 ts,如果你用过 nest.js,你会发现和写 java 真的没什么区别,而且服务端的很多理念也能够通过 ts 的各种个性来应用,比方泛型、抽象类等。当然,如果是小团队,而且须要疾速开发,对于小而美的利用,集体认为还是 js 适宜,毕竟 js 是一门灵便的语言,哈哈哈
可视化方向
- 可视化这里,往年其实没有做多少实际,然而集体认为,这七个大方向而言,最容易出成绩,或者说最能出大佬的,可能还真是可视化畛域,如果能在可视化畛域做到了前 5%,那么我置信各大厂必定会花钱养着你,毕竟我领有你不肯定重要,然而对手不领有你对我很重要,你的技术壁垒就出现了进去,也就在这个内卷的江湖取得了一些当先和劣势,最起码裁员的优先级也不会那么靠前,哈哈哈
- 第一点说的有点儿远,说说切实的,集体感觉能够将阿里的 antv 作为可视化畛域的一个标杆,针对各种特定畛域进行开展,比方 gis 等,当然,其实可视化畛域钻研的深的话还是挺冷门的,这其实也会有一些机会,webGL/webAR/webVR 等等都能够作为切入点,配合着上面的音视频畛域,这两个的互相联合,的确还是能做出些货色的
智能化方向
- 智能化畛域,集体认为其实外围不在于前端,而在于人工智能,而人工智能畛域就不仅仅前端那么些货色了,对于封装好的如 TensorFlow.js,咱们是间接拿来用的,然而对于领面的模型建设其实才是要害,如果有同学想在智能化畛域有所倒退,集体倡议还是要深钻一下,最好能够深造一下,毕竟这个货色是真的须要学术研究 + 产业实际的
- 在产业实际的前端畛域,阿里还是比拟当先的,比方 imgcook,其外围目标是将图片转成前端代码,利用的机器视觉去辨认图片中的不同的地位信息等,将其转成前端的代码,也就是所谓的 D2C,即:Design to Code,往年的 D2 大会上又提出了 P2C,即:Product to Code,但并不是真的将人类语言间接转换成 code,而是对 D2C 的一个业务扩大,对于 D2C 某些业务代码利用一些特定的 schema 进行约定,让机器学习过程中多一些参数束缚,从而晋升代码实现度。尽管转化的代码还很冗余,然而对于一些高级的我的项目或页面,的确能够交给机器去实现,集体认为人工智能对低端反复的工作的确会进行代替,也算是对前端内卷做了肯定的奉献,摊手 …
互动方向
- 互动方向,目前大头还是在游戏方向,然而我还是认为页游或前端实现游戏次要还是做一些开胃菜的性能,并不能真正的将用户带进沉迷式的体验,对于小游戏引擎,往年阿里如同出了一个 eva 的引擎,感兴趣的同学能够看看
- 对于新体验方面,AR/VR/MR 等可能在明年 5g 深入的时候会有一些落地实际,但可能还是不温不火,互动方向配合设计的新理念可能会是一个新的突破点
音视频方向
- 这里想说一说 WebAssembly,尽管都说 wasm 是会代替掉 js,但目前看应该还不太事实,wasm 目前次要还是配合音视频畛域多一些,另外就是一些额定的优化措施,配合 rust 进行优化等,如果有志于音视频畛域有所建树的同学,wasm 的确能够储备起来
- webrtc 是音视频畛域一个绕不开的技术,另外就是播放器的实现,video.js、flv.js 等,对于一些视频播放的协定也要理解,如 rtmp/rtsp 等,往年疫情的关系,带动着直播畛域的炽热,前端音视频方向说不定会是一个风口
工程化方向
- 工程化方向就不得不提 serverless,这是往年前端最炽热的一个话题了,私认为 serverless 不仅仅是前端畛域的变动,它可能扭转目前的开发模式,当前没有前后端之分(ps:目前的确是有合的趋势),只有云工程师和端工程师之分,那么对于目前的前端来说,咱们就不能仅仅只关注前端畛域的一些内容了,docker、k8s 等属于传统后端或运维的局部,咱们也须要把握,对于一些后端的思维及名词也须要相熟,如限流、削峰、服务降级等。当然 serverless 的前提其实是云原生,如果没有云化,那实现 serverless 的成果应该不如目前这样,当然集体认为这是一个必然的趋势,从往年的云栖大会以及运营商 5g 云化来看,云网交融、云边协同应该会是支流
- 前端工程化另外一个方向就是全链路的工程化,从脚手架、low code、插件市场等全链路的提供,简化前端开发门槛,这里能够参考淘系的飞冰,对 low code 以及 ide 的插件提供都有波及,以及 ui 组件库的提供等等,造成一个全链路的前端生态。这里能够说说 low code 和 no code,no code 是一个无需任何编码的现成的工具,就是齐全没有编程的入口;low code 是一个须要局部编码的工具,为了是给一些非专业人士但又有编程须要的人员应用,强调开发进去给他人用,常见的比方给经营人员用的 h5 编辑器,如易企秀、maka、ih5 等
跨端方向
- 跨端方向是一个陈词滥调的问题,支流还是要 write once,run anywhere,常见的无非就是利用各种框架将各个 DSL 进行来回转换,但其实这是一个伪命题,实质是不可能达到大一统的场面的,形象就很难具象,这两者须要有一个均衡,须要对具体常见具体分析
- 私认为小程序畛域是端方向下一个各家大佬追赶的市场,因为 app 畛域的跑马圈地都已根本造成,当初再去开发出一个景象级的 app 简直很难很难了,然而将 app 作为操作系统,以小程序去带动用户,造成用户闭环,还是有很大市场的,类小程序利用,如 pwa、快利用等都是这种承载形式的不同展示,对跨端来说,这个不失为一种倒退抉择。对于小程序的框架也呈现了 kbone、rax 等,可能也会有一个相似 w3c 这样的一个小程序规范,然而像微信这种巨无霸利用,是否真的会恪守就是另一回事了,总之,其实也不失为一个抉择
总结
回望 2020,瞻望 2021,总结如下:
- 大前端继续深耕,泛前端兼容并包
- 中后盾微服务化,可视化行业细化
- 智能侧算法深入,互娱侧状态变动
- 音视频构造优化,工程侧全面转化
- 跨端侧具体改化,前端更加内卷化
好了,2021 到了,愿大家在这个内卷的时代,都有本人的一技之长,造成本人的外围竞争力,升职加薪,再创辉煌,共勉!!!