2022 前端注定不平凡

2022 年什么会火?什么该学?本文正在参与“聊聊 2022 技术趋势”征文活动 」

背景

2021 这一年我们见证了微前端的拓展实施、体验到了serverless带给我们的快捷、认识到了低代码疯狂的攻占我们前端市场。在这种大环境下,前端是否还能继续流行?我的回答是肯定的,随着跨端跨框架的、鸿蒙市场的侵占、万物互联时代的到来、分布式操作系统的流行。这些都离不开前端的开发和掌控。虽然互联网的时代快要落幕,但是元宇宙的兴起、超级计算机的成功研制、行为互联网的建设,我们能否在这些新技术里面让前端发光发热。

还是说点现实的吧,2022 前端还能干点什么呢?

现实

现实的说,不管2022怎么变,前端是不可能没有的,那我们怎么从有限的时间学到更多的知识呢?目前前端的趋势已经很明朗了,基础框架:react、vue、typescript等,打包框架:webpack、rollup、vite等,包管理工具:npm、yarn、pnpm等,测试框架:test等这些框架在多年的拼杀中基本稳定了。那我们能做的就是‘如果扳不倒它们,那么就加入它们’。

react 和 vue 不可能被替代

reactvue这两个大哥还是在国内市场使用率较为广泛。react在受欢迎程度上依旧是老大,vue受欢迎程度上每年都是突破性增长;React有Facebook这样的巨头企业支撑,Vue没有; React比Vue更灵活;Vue的体积比React更小。两者都有优缺点,看大家怎么选择,一般大厂都是偏react,中小企业为了讲究效率vue则是最好的选择。下面简单的介绍下它们最新的状态

  • 先说一下react,自从发了16版本的hooks,也让大家体会了钩子函数为大家带来的方便。前年发布的17版本,老实说有点平缓了,并没有太大刺激到我们对react的认知。去年发布的React 18 Bate自己也看了下,我觉得这是今年react必将主推的一个版本,它最大的特点是什么呢?Automatic batching:在 React 中会将多次setState合并到一次进行渲染;Concurrent Mode:中断渲染。当一个更高优先级渲染到来时,通过放弃当前的渲染,立即执行更高优先级的渲染,换来视觉上更快的响应速度。SSR for Suspense: 即像水流一样,打造一个从服务端到客户端持续不断的渲染管线,而不是 renderToString 那样一次性渲染机制。按需取渲染我们想得到的数据。
  • 再说一下vue,前年发布的vue3.0,总体来说有这几个特性:1. 更快 2. 更小 3. 更容易维护 4. 更加友好 5. 更容易使用。去年看着是一直在修问题,一年间发了将近 60 个版本,平均每周发一点几个版本。尤大的工作非常的勤勉,而且在周六日也经常提交代码,而这一切,都是为了让大家在 2022 年有新东西学习!

image.png

serverless

再聊聊最近大厂的疯狂推广的serverless

以前在开发的时候,前端开发模式经过了4个大的阶段:基于模板渲染的动态页面,基于 AJAX 的前后端分离,基于 Node.js 的前端工程化,基于 Node.js 的全栈开发。最新的阶段就是我们现在说的serverless

简单的介绍一下:它其实就是构建和运行不需要服务器管理的应用程序CNCF全称Cloud Native Computing Foundation(云原生计算基金会),最初的口号是坚持和整合开源技术来让编排容器作为微服务架构的一部分。

Serverless 就是 FaaS 和 BaaS 的结合。简单来讲,FaaS(Function as a Service) 就是一些运行函数的平台,比如阿里云的函数计算、AWS 的 Lambda 等。BaaS(Backend as a Service)则是一些后端云服务,比如云数据库、对象存储、消息队列等。利用 BaaS,可以极大简化我们的应用开发难度。

特点如下:

  • 事件驱动----函数在 FaaS 平台中,需要通过一系列的事件来驱动函数执行。
  • 无状态----因为每次函数执行,可能使用的都是不同的容器,无法进行内存或数据共享。如果要共享数据,则只能通过第三方服务,比如 ```Redis`` 等。
  • 无运维----使用serverless我们不需要关心服务器,也不需要关心运维,这也是serverles思想的核心; 4、低成本----使用 Serverless 成本很低,因为我们只需要为每次函数的运行付费。函数不运行,则不花钱,也不会浪费服务器资源过度

低代码

再说说去年巨火的低代码,先说说它有什么作用:减少不必要的工作量、强大的平台能力支撑、一体化生态能力复用。

低代码是什么呢?简单来说低代码是一种可视化应用开发方法。通过低代码开发,不同经验水平的开发人员能够通过图形用户界面,使用拖放式组件和模型驱动逻辑来创建Web 和 移动应用。

低代码对于前端来说也是分类的,一类是将html和css低代码化,一类是将逻辑处理进行低代码化。

前者其实将在可视化应用中搭建完成后,将html和css代码已经输入,帮助开发者省去布局代码,减少代码编写工作。

后者将业务逻辑进行可视化选择,将事件处理、接口处理、全局设置等配置已可视化的方式呈现给开发者。

去年低代码疯狂的侵入,大厂知名公司入局也是很早,但低代码赛道尚未形成明确的市场格局,入局者都有翻盘的机会,也有可能被翻盘。

多端转换

现如今市面上端的形态多种多样,Web、React Native、微信小程序等各种端大行其道,当业务要求同时在不同的端都要求有所表现的时候,针对不同的端去编写多套代码的成本显然非常高,这时候只编写一套代码就能够适配到多端的能力就显得极为需要。

虽然多端转换18年就已经很火了,但是在如今万物开花的年代,还是没有一种统一的规范,随着flutter、openharmony进入市场。前端开发的开发成本简直就是每周在学不同的内容。所有一种统一的开发语言显得尤为重要。

今年参加了taro兼容openharmony的开发,在开发的过程中发现如果一种语言去兼容另一种,不但需要对自己语言做到各端的适配,还需要对兼容语言的了解和兼容语言的稳定性。但是openharmony也是在不断的开发和完善,这就给我们开发成本大大增加了。

未来肯定会对不同的端、不同的语言做统一处理,这样才能将成本和效率达到最高。

结论

未来,元宇宙的流行、各种算法的日常入市。这些我们改变不了,但要学会应对。

2022了,不管这些新技术还会有哪些,但是我们还是要道阻且长,行则将至,行而不辍,未来可期

おすすめ

転載: juejin.im/post/7053823315902726174