关于javascript:2021前端会有什么新变化

73次阅读

共计 3444 个字符,预计需要花费 9 分钟才能阅读完成。

2021 前端会有什么新变动,首先须要搞清楚咱们关注这些新技术的目标是什么?

置信对于关注这个问题的人包含我来说,除了理解技术倒退风向作为饭后谈资以外,最重要的是看能不能在公司外部落地、做出一番问题来,当然升职加薪那都是后话了。

回望过来

首先定义一下我说的“过来”是 2019 年及以前。

以史为镜,能够知兴替。回望一下过来,有利于咱们对将来做出更好的判断。咱们先细数一下过来的几年间大厂的前端都在做什么。

前端工程化

这个应该是前几年社区探讨的最多、面试问到最多的一个名词,那么什么是前端工程化呢?我感觉须要从以下几个概念开始讲起。

模块化

先说 JavaScript 的模块化。

从 ES6 开始,JavaScript 语言有了本人原生反对的模块化计划——ES6 Module,这样有个益处,前端们不必去应用社区定制的模块加载计划,间接应用对立的就好。对立模块计划之后,既能够不必额定引入模块化解决方案的代码,又能够为前面的自动化对立解决做好筹备。

再说 CSS 的模块化。

CSS 模块化次要是解决的 CSS 类名抵触的问题,比方常见的 BEM 约定以及社区丰盛的 CSS module 解决方案,有了这些货色,前端工程多人开发就能够优雅的解决类名抵触的问题。

组件化

随着 React 生态和 Vue 生态在国内各大前端团队的落地,组件化开发曾经是标配了,并且开源社区也积淀出了以 Element、Ant Design 为代表的优良组件库。

大厂的程序员们在组件的概念上又做了一层形象和封装,比方以业务组件和业务区块为形象的中后盾前端解决方案 Ant Design Pro,并且它还在前端工具库、前端 UI 设计语言等等计划做了对立。

自动化

首先是开发的自动化。

webpack 和 nodejs 在开发的自动化上起了很大的作用。前端我的项目本地化开发的 server 由 nodejs(罕用,也不肯定非得是 nodejs)提供,开发过程中的各种辅助性 plugin 和 loader 都由 webpack 生态提供,上线前的代码打包、代码宰割、资源解决也由 webpack 操作,能够说过来几年间很多前端在职业降职上都吃了引入 webpack 和 nodejs 的红利。

再说 babel,有了 babel 的配合,前端能够写高版本的 JavaScript 办法,配合 webpack loader,主动编译成低版本 JavaScript,前端能力再次失去晋升。

其次是部署公布的自动化。

这个应该是很多大厂前端基建团队做的事件,比方继续公布、版本控制、外部 cdn 建设等等。

大前端

这也是个在过来几年炒的很热的词,不过这个词不仅仅是炒作,它也实实在在的扩大了前端的能力以及现有的公司组织架构,比方据我所知有的公司挪动端和前端就会划分到同一个团队治理,统称大前端团队。

nodejs

这个在前端工程化局部曾经说过一些,这里再次提起是因为在工程化中 nodejs 表演的角色是提供 nodejs 环境以及局部后端能力,而在大前端团队里是实实在在的存在 nodejs 工程师角色和 nodejs 我的项目的。比如说在前后端拆散的过程中,局部公司(比方阿里淘宝)会倒退出一个中间层的货色,这能够了解为是一个大前端团队保护的业务接口聚合层,前端写接口必定是应用 nodejs 最棘手,而且 nodejs 生态也在蓬勃发展,比方早些年的 TJ 大神一人之力扛起半个 nodejs 生态圈,涌现了 koa、express 这样的基于中间件的开发库,再到起初阿里巴巴的 egg,再到 Nest.js,当初根本曾经没有裸写 nodejs api 的了。

跨端

先说说手机端

首先,最间接的跨端就是在 APP 壳子外面套 HTML 页面来开发,这种计划也催生了很多 hybrid 解决方案,前端也须要去理解客户端的常识以及 JavaScript Bridge 的设计,同时也缩小了 APP 客户端工程师的岗位????

而后,随着 React 生态蓬勃发展,Facebook 开源了一个跨平台挪动利用开发框架——ReactNative,它能够让你以 React 的前端语法来开发挪动利用,实质就是虚构 DOM 映射原生 UI 元素、通过 bridge 调用原生 API,这种思路让前端的触手伸到了挪动开发,也促成了大前端团队的建设。Vue 生态也有阿里发动的 Weex 挪动开发框架,原理相似。

再起初,Flutter 呈现了,它也是一个跨端的开发框架,精确来说它和 JavaScript 生态关系不大,应用 Dart 语言开发 APP,并且有本人的跨平台自绘引擎来保障多端 UI 体现统一,但因为也是一种跨端的解决方案,所以也受到了大量前端工程师的关注和学习。

最初,还是要提一嘴小程序,这个技术计划其实是商业的产物,各个公司都想把内容和生态留在自家的 APP 里,所以从微信小程序开始(微信不是最早,然而倒退的最好),阿里、百度、字节跳动等等这些公司都有了自家的小程序。

再说说桌面端

桌面端据我理解应用的比拟多的是 Electron,它能够让前端以 JavaScript 来开发出桌面利用,比方字节跳动的飞书桌面端就是应用 Electron 来做的。

总结过来

从过来这些倒退的技术能够看进去,前端次要是在做统一化、工程化、生态化的事件,从早些年间的刀耕火种逾越到比较完善的工程化开发,前端的能力范畴也失去了扩大,以前不能做的事件当初能够做了。

很多互联网公司的前端高 p 也是在这一波浪潮中降职,失去了更好的职业倒退。

剖析当初

首先定义一下我说的“当初”是 2020 年左右。

当初基本上各大公司的前端工程化革新大体实现,各种革新计划、组件库都层出不穷,所以前端又有新玩法了。

Serverless

精确来说,Serverless 并不是前端的技术畛域,因为它解决的是让开发者不必关怀服务器底层架构和运维工作,造成一种“无服务器”的假象。

那为什么这个技术在前端畛域会受到追捧呢?

因为这个技术刚好解决了整个开发链条中前端缺失的能力,即服务端底层和运维能力。各个大公司的前端团队也都在尝试把 Serverless 落地,比方在知乎上就能够看到很多对于 Serverless 的布道。

NoCode 和 LowCode

在我看来,低代码(LowCode)和零代码(NoCode)产品,是前端对现有能力整合之后,对其余畛域的一种扩张和赋能。其实各大公司在某些特定业务场景中早曾经有相干的产品落地了,比方广告业务、电商经营的繁多的落地页需要能够应用零代码产品来解决,全程不须要代码参加。

那既然之前有,当初为什么又提起低代码和零代码呢?我感觉起因有两个:

  1. 之前解决的只是某些特定业务场景的问题,当初想把这种能力逐步扩大到更多的业务场景,比方扩大到公司内部,来做 toC 的应用。
  2. 之前解决的只是页面级的问题,当初想解决利用级的问题。

总结当初

当然了,当初的探讨的比拟多的、正在进行中的技术和解决方案必定不止我说到的这两种,欢送大家补充。

目前大公司的前端们也在联合业务在做这方面的事件,如果你所在的团队在做相干的事件,不如退出进去,不论是技术或职业倒退,都会有比拟好的播种。

展望未来

React Server Component

这个目前还在提案中,将来成熟之后极有可能扭转前端的开发方式,前端 React 生态的范畴又向服务度端扩大了,一波新的根底建设、技术计划能够思考了。

Serverless 大规模落地

依照当初社区以及各大公司外部的倒退,Serverless 应该会在 2021 有大规模的落地,运维岗位会进一步缩小????

NoCode 和 LowCode 继续倒退

低代码这个概念在 2021 年初因为钉钉发布会被再次带火,因为钉钉的使用量以及 toB 端市场有很多外部利用的搭建需要,所以它强调这个概念也不奇怪。

置信有像阿里钉钉这样的企业的推动,低代码和零代码会倒退的更好。

不必焦虑

说了这么多,是不是更焦虑了?其实不必。

React 核心成员 Dan Abramov 都慷慨抵赖了他并不理解 Flex、Webpack 等等技术,没试过 Serverless 等等“时尚”技术,很多你会的技术他不会,照很多招聘规范来看他还评不上阿里 P7,然而这并不影响他能成为 React 核心成员,以及他在他本人善于的畛域的造诣。

所以,不必都会,选定一个本人喜爱的、能做出问题的技术,深刻上来吧!

我是耳东,目前在某大厂做前端,我的公众号是「前端耳东」

公众号每周都会更新文章,次要包含:
1、前端技术分析,不论是新技术尝鲜、源码解析、连载教程,我都会波及到
2、程序员相干的职场教训,比方程序员如何降职、程序员跳槽应该留神什么等等

除此之外,还提供以下几项服务:
1、收费批改简历
2、收费技术咨询
3、收费技术布局

欢送关注「前端耳东」

正文完
 0