当前位置:主页 > 业界动态 > WEB3.0 > 从大前端“穿越”到终端,开发者应该必备什么技能? | 解读终端的 2022

从大前端“穿越”到终端,开发者应该必备什么技能? | 解读终端的 2022

2023-01-17 13:34:50来源:互联网

文章导读
采访嘉宾 | 郭虹宇(弘禹)、舒文亮(舒文)编辑 | 闫园园 本文是 “2022 InfoQ 年度技术盘点与展望” 系列文章之一,由 InfoQ 编辑部制作呈现,重点聚焦终端领域在 2022 年的重要进展、动态, ...

从大前端“穿越”到终端,开发者应该必备什么技能? | 解读终端的 2022

采访嘉宾 | 郭虹宇(弘禹)、舒文亮(舒文) 编辑 | 闫园园 本文是 “2022 InfoQ 年度技术盘点与展望” 系列文章之一,由 InfoQ 编辑部制作呈现,重点聚焦终端领域在 2022 年的重要进展、动态,希望能帮助你准确把握 2022 年终端领域的核心发展脉络,在行业内始终保持足够的技术敏锐度。

“InfoQ 年度技术盘点与展望”是 InfoQ 全年最重要的内容选题之一,将涵盖操作系统、数据库、AI、大数据、云原生、架构、大前端、编程语言、开源安全、数字化十大方向,后续将聚合延展成专题、迷你书、直播周、合集页面,在 InfoQ 媒体矩阵陆续放出,欢迎大家持续关注。

特此感谢郭虹宇(弘禹)、舒文亮(舒文)(按姓名首字母排序)对本文的贡献,他们的真知灼见,是本文能与大家见面的关键。

诚然,刚刚过去的 2022,对整个互联网行业来说,是极具挑战且富有变化的一年,然而聚焦到大前端技术领域,整体上仍保持平稳向前的状态,如果一定要用关键词形容,综合受访专家看法,本文认为“深度优化”一词较为贴切。

所谓“深度优化”,是指前端领域经过蓬勃发展,已逐渐进入成熟期,短时间内并没有出现令人眼前一亮的技术拐点,但同时据多位身处技术洪流中的专家预判,新一代的技术也正在悄然孕育与布局。当然,这也意味着又一道难题摆在了当代开发者面前:大前端领域划时代分水岭将发生在何处?

或许,我们能从近几年发生的某些重要事件中看出一些端倪:

在 WWDC 2019 上,苹果更新了 ARKit 增强现实平台,并宣布推出全新的 ARKit 3;

在 WWDC 2021 上,RealityKit 2 新增加了 Object Capture API,通过该 API,能够帮助开发者将在 iPhone 上拍摄的视频,在几分钟内创建真实世界对象的高质量、照片般逼真的 3D 模型,并将它们转换为针对 AR 优化的 3D 模型;

在 2022 Google I/O 上,谷歌 CEO 发布了地图新功能,虚拟与现实相结合,仅通过图像就能生成实景画面,该功能简称为“沉浸式视图”;

同样在 2022 Google I/O 上,谷歌发布了一款 AR 眼镜作为“one more thing”压轴登场;2022 年 7 月,华为正式宣布发布 HarmonyOS 3,HarmonyOS 是华为推出的面向万物互联的全场景分布式操作系统;

疫情三年,中国互联网 to B 市场大规模增长。2022 年 12 月,钉钉宣布注册用户破 6 亿,第三方数据显示企业微信 MAU 过亿。

......

那么对于开发者来说,究竟从这些事件中能够得到什么信号,信号又指引了哪些方向?接下来,本文将跟随来自阿里终端委员会两位技术专家弘禹与舒文的脚步,探索终端的过去与未来,试图为身处迷雾中的开发者带来问题的部分答案。

实际上,相较大前端这一技术名词,阿里巴巴曾不止一次提到终端这个概念,这不禁引人好奇,当大前端的含义仍被业内津津乐道之时,终端的说法又从何而来?

从大前端到终端,未来已来

弘禹谈到,终端其实并不是一个新词,甚至对于资深开发者来说已经亲眼见证了几代终端的变化:从最早 80 年代使用的显示器加键盘过渡到 PC 普及,再过渡到如今移动端设备普及,可以看到,大概每十年终端的边界都会迎来一次扩展。基于此技术趋势,阿里巴巴沉淀出对“终端”的定义,即:“为用户提供人机交互的设备及应用。当前以 UI 交互终端为主,如手机、PC、平板等。”

“我们在包括不限于 D2 大会等在内的各个场合都提‘终端’这个概念,是因为阿里正在以自己对行业的理解和认知在对未来做预判。”舒文谈道,同时他借用今年阿里终端委员会成立时对内公布的两段话进一步阐释了终端的内涵:






随着技术的演进,当下的前端和客户端有了越来越深的相互渗透:Web 的开放性和高效迭代,客户端技术的即时体验和原生能力,持续升级的技术体系像有生命意识一般朝着“既要又要”的方向攀沿:运行在客户端内的 Web、Hybrid API、拥抱 W3C 标准的动态化跨端引擎(Weex 2.0)、基于开源 Flutter 生态的大前端研发体系,都在让前端和客户端不断地交织融合、模糊着边界;

更为重要的是,互联网基础设施越来越完备、终端设备规模 & 类型爆炸式增长,用户的体验将不再单纯的是网页或 App,不同的信息载体都将拥有自己的体验:头戴式 VR 设备的沉浸式体验、扫码枪的爽快支付、车机的语音和硬件呼叫应答、商场的各类娱乐屏幕、家庭的智能设备,甚至健身房的魔镜都不断在印证着科幻小说作家那句,“未来早已到来,只是尚未平均分布”。用户的体验将被空前的满足,而我们则更应该提前做好准备应对变化,面向用户有统一全局的终端视角。

螺旋形理论讲到,事物的发展或进步不是直线式上升,而是类似于“螺旋”般上升,这个理论放到前端技术领域,同样也适用。结合前文提到的重要事件释放的信号来看,大前端领域虽然未曾行至清晰拐点,但端技术的重要性确是日渐凸显。终端概念的提出,背后的本质正是看到了前端和客户端的互相渗透,同时期望二者能够尽快打破过往壁垒,及早为新的终端设备和体验做好技术和人才上的布局。

了解终端的概念后,下面将按照领域中的重点技术方向,感知当下领域的具体发展现状,以及展望未来,领域中面临的机遇与挑战。

重点技术趋势解读 Web 开发仍是主流

2021 年 5 月,InfoQ 发布的编程语言 4 月排行榜中显示:Web 开发依然是终端领域的主流。据投票数据显示,Web 开发得票率为 68%,iOS 开发得票率为 16%,而 Android 开发则为 5% 。同时,小程序开发以 6% 的得票率超过 Android 开发。那么在 2022 年,这一趋势是否发生了变化?对此,舒文谈道,就其个人观察,这一趋势不仅没有变,从某种角度来讲,反而会变得更为主流。以桌面领域以及移动互联网领域两个纬度分析:

桌面领域

过去两年, to B 市场不断被挖掘,桌面终端技术逐渐升温。基于浏览器的 Web 技术自不必多说,原来的桌面客户端领域也开始大量渗入 Web 技术。究其原因,不外乎三点:

桌面硬件性能高度过剩;

类 Eeletron/Tauri 的开发框架持续完善带来诸多成功案例;

操作系统原生支持 Web 技术进行研发(如 Windows 支持 WebView2、PWA)。

移动互联网领域

其实,无论什么技术形态或者研发模式,本质上都在回答一个务实的问题:如何让技术方案做到便宜(成本低)、好用(易上手)、质量高(交互体验好)。在过去很多年,移动 App 领域中,Web ( WebView ) 天生具备了前两者优势,但却也因受限于太多因素,如独立的进程策略、高耗时的启动渲染逻辑、缓存能力不完善等在高质量交付上总是捉襟见肘。因此在过去,开发者们时常会听到一个说法:“先用 Web 搞,然后慢慢 Native 化。”

而当下,这种情况已发生了巨大的变化,其中,促使这种变化的原因主要有两个:

手机硬件性能的高度过剩,愈发成熟的跨平台基础设施(包括不限于脚本引擎、排版引擎)都使得跨平台研发成为行业的主流诉求;

具象到研发模式上,类 Web 的方式在效率和体验上几乎是规模化研发下的最平衡解。

主流跨端框架

根据终端的定义,目前市面上“端”的形态多种多样,为了解决多端独立开发的问题,跨平台技术便应运而生。目前,在各大互联网公司一起努力下,市面上出现了各种跨平台框架。那么跨平台框架 2022 年应用情况如何呢?首先看几个业界主流解决方案:Flutter、React Native 、Weex。

Flutter

从大前端“穿越”到终端,开发者应该必备什么技能? | 解读终端的 2022

站在 2023 年初看来,Flutter 已经是不再是以前小众的跨平台框架了。如图所示,可以看到如今的 Flutter 已经有高达 148k 的 Star 和 24.2k 的 Fork。从官方公布的数据上, Flutter 已经基本超过其他跨平台框架,成为最受欢迎的移动端跨平台开发工具,截至 2022 年 2 月,有近 50 万个应用程序使用了 Flutter。

2022 年 5 月,Flutter 3.0 正式发布,不同于之前的版本,Flutter 3 新增了对 macOS 和 Linux 应用程序的稳定支持。“Flutter 3.0 出来之后,我个人感觉它这套体系会更成熟”,弘禹谈道,同时他认为 Flutter 未来可能会向布局多端多设备上更迈进一步。“这也给业界一个更强的信息,就是真正实现过往我们一直都在谈的一套代码多端运行”。不过,他也坦言这在技术上确实是有一些瓶颈和阻力的。

2022 年 8 月,谷歌又发布了 Flutter 的 2022 年的第 3 个版本,即版本 3.3,随之一起发布的还有 Dart 2.18 。这两个版本都是改进版,没有添加重大的新特性。

React Native

对于 React Native 来说,它一如既往地在跨平台应用程序开发中占据一席之地。大多数科技巨头都使用它来开发应用程序。2022 年我们看到的最新和关键变化之一是其架构的更新。

React Native 0.69 发布了强大的新功能,例如 React 18 支持和捆绑的 Hermes。它带有默认启用的 React 18、useId 等新钩子以及 useTransition 或完全 Suspense 支持等新功能。

Weex

2013 年,阿里开始 All in 无线,整个互联网都在做 PC 到移动端的转型,那几年移动端流量暴涨,设备性能也较差,这时,肩负着历史使命的 Weex 出现了。

目前,手机淘宝仍在大规模使用 Weex,主要应用于需要快速迭代的产品、业务以及大量卡片场景。2020 年八月份启动 Weex 2.0 项目,不再依赖系统 UI,开发自绘渲染引擎,并且保持向前兼容。

受限于篇幅原因,本文无法一一展现全部众多跨平台框架,那么对于开发者来说,又该如何众多跨端框架作抉择呢?

弘禹认为对于初创公司或者规模较小的团队来说,在人员配置以及能力模型契合的前提下,Flutter 或许是一个比较好的选择。不过,无论选择哪个跨平台框架,最重要的还是依据项目场景,比如可以用 Flutter 做 App 底座或者 iOS、安卓的跨端技术选型,但如果做跨多端甚至跨应用,则建议选择偏 Web 的框架。“不管选 Flutter、RN 还是 Weex,我觉得最重要的还是结合场景,同时结合团队不同发展阶段和人员配置情况,再去做综合的判断取舍和选择。”弘禹总结。

JavaScript & TypeScript

2007 年,Jeff Atwood 提出著名的阿特伍德定律,“any application that can be written in JavaScript, will eventually be written in JavaScript”,意指“任何可以用 JavaScript 来写的应用,最终都将用 JavaScript 来写”。在上述报告中,这一定律再次用数据得到了印证:终端领域编程语言使用情况上,JavaScript 以 78.5% 的得票率,排名第一;而 TypeScript 得票率为 42.9%,排名第二。

热门文章
日榜 周榜
1 3月6日投资晚报|证监会:鼓励上市公司一年多次分红,上海电力

周三(2024年3月6日),A股市场早盘低开,午后开始反弹。上证指数涨上证指数跌0.26%,报3039...

2 金股挖掘| 绑定大众集团实现业务腾飞,电车时代来临,这家车

2023年我国汽车产业发展取得突破性进展,全年产销均超3000万辆,创历史新高,汽车出口首次跃...

3 调研早知道| 自有品牌战略进入全面收获期,这家企业海外市场

界面新闻记者 | 袁颖琪 跟随着我国白电“走出去”的步伐,有一家企业的优势正日益凸显。这...

4 盘中必读|今日共105股涨停,三大指数小幅下跌,新质生产力概念

3月6日,大盘午后震荡回落,三大指数均小幅下跌。截至收盘,沪指跌0.26%,深成指跌0.22%,创...

5 重大事项停牌前一度大涨17%,“量子通信第一股”国盾量子发生

界面新闻记者 | 冯雨晨 一番大涨之后,国盾量子(688027 .SH )宣布筹划重大事项停牌,引起市...

1 3月6日投资晚报|证监会:鼓励上市公司一年多次分红,上海电力

周三(2024年3月6日),A股市场早盘低开,午后开始反弹。上证指数涨上证指数跌0.26%,报3039...

2 金股挖掘| 绑定大众集团实现业务腾飞,电车时代来临,这家车

2023年我国汽车产业发展取得突破性进展,全年产销均超3000万辆,创历史新高,汽车出口首次跃...

3 调研早知道| 自有品牌战略进入全面收获期,这家企业海外市场

界面新闻记者 | 袁颖琪 跟随着我国白电“走出去”的步伐,有一家企业的优势正日益凸显。这...

4 盘中必读|今日共105股涨停,三大指数小幅下跌,新质生产力概念

3月6日,大盘午后震荡回落,三大指数均小幅下跌。截至收盘,沪指跌0.26%,深成指跌0.22%,创...

5 重大事项停牌前一度大涨17%,“量子通信第一股”国盾量子发生

界面新闻记者 | 冯雨晨 一番大涨之后,国盾量子(688027 .SH )宣布筹划重大事项停牌,引起市...

撤稿申请|

备案号:鄂ICP备2022006215号 Copyright © 2002-2022 metaversezj.com.cn 元宇宙之家 版权所有