本文翻译者系奇舞团前端工程师
原文标题:State of Frontend 2022
原文作者:Aleksandra Dąbrowska
原文地址:https://tsh.io/state-of-frontend/
前端是否厌倦了新趋势,并寻求稳定?
一、简介
过去两年挺不容易的,在全球范围内引发了许多变化。自从我们的生活逐渐"搬到了线上",IT行业也顺势参与了数字转型。前端开发也在从技术探索再到落地实践等各个方面发生了很多变化。因此,我们尽可能的将前端2020年和2022年的数据并排呈现,以便更好地进行比较。
最著名的前端开发笑话“新的一天,新的框架”似乎已经过时了。当然,新的框架和库确实出现了,但在某些领域,朝着潮流创新的竞赛慢慢让位于成熟和稳定。
1.1 本文数据来源
-
3703份有效填写的调查问卷
-
125个国家的数据
-
19位前端领域的专家
1.2 调查问卷分布
共计3703份问卷,其他: 84份,其中问卷分布如下:
-
北美: 807份
-
南美: 252份
-
欧洲: 1918份
-
非洲: 98份
-
亚洲: 465份
-
澳洲: 79份
除此之外,我们还邀请了19位当代前沿专家分享他们对调查结果的看法和评论。他们的见解不仅是知识的事实来源,还将为您提供不同前端开发主题的思考素材。再次向我们的每一位评论员致谢——没有你的知识和经验,这份报告就不会如此精彩。向他们表达一些感激之情!
我们也鼓励您积极参与结果分析!如果我们对前端人员有所了解的话,那就是每个人都有自己的意见,很少把它们留给自己——这很好,因为它推动了整个行业的发展。每个图表和表格都有一个“共享”按钮,以防您想与朋友开始讨论或只共享报告的一个特定数据点。
最后,向所有3703名填写该调查的前端人员表示衷心的感谢——没有你,就没有报告!
二、 开发者和工作条件
2.1 对于软件工程来说,过去几年最大的变化是远程办公
"高达56%的受访者表示远程工作,其中只有5%在办公室工作。大规模远程工作的概念如此新颖,以至于2020年的调查甚至没有测量这个数据点。
今年的一个大问题是,完整的远程工作将继续存在,还是我们将看到混合工作更受欢迎。大多数工程师显然更喜欢远程工作——不需要通勤,很少有人在肩膀上敲打分散注意力。然而,分享信息和复制办公室内已经存在的自发讨论仍然是一个挑战。" --- Gergely Orosz
2.2 你现在工作的形式是什么?
-
远程办公: 59.7%
-
公司办公: 5%
-
混合办公: 35.3%
2.3 做前端开发的不仅仅是前端工程师
今年,一些从事前端开发的人在“其他”选项中共享的职位包括:
-
一个训练营的学生刚刚开始学习前端
-
一位自学成才的开发者在一所非技术大学学习,他爱上了frontend
-
有时将代码推向生产的产品经理
-
技术大牛,不时帮助前端团队
-
前端开发架构师
-
设计系统总监
-
一个也会编码的设计师
-
平面设计师和开发者
-
全干工程师:一个人开发一切,包括前端开发
这应该不足为奇:但它总是很好地提醒我们,前端是一个非常容易上手的技术领域,即使在没有太多前端背景的情况下,这种情况很常见。
2.4 你从事前端工作的时间有多久?
-
超过5年: 28.4%
-
超过10年: 24.1%
-
超过3年: 22.9%
-
超过1年: 18.9%
-
不足1年: 5.7%
2.5 开发者技术水平
-
中级: 28.9%
-
高级: 28.6%
-
技术经理: 19.6%
-
初级: 13.1%
-
技术负责人: 4.6%
-
首席技术官: 2.9%
-
其他: 2.3%
2.6 在更大的前端团队中工作变得越来越普遍
27%的受访者表示在拥有50多名前端工程师的公司工作。同时,30%的开发者分享了5个或更少的前端开发者在他们公司的工作方式。50%的受访者在拥有10名或以上前端工程师的公司工作。
这个统计数据显示了一个有趣的二元性。在拥有大量前端团队的公司工作的前端工程师几乎与在少数人团队或单独工作的公司一样多。
这些公司的开发经验和期望相差很大。大公司在前端平台团队的同时,还将更重视开发人员体验。辅导也更常见。在较小的地方,每个开发人员的责任更大,获得反馈的选项更少。
作为一名前端工程师,我建议随着时间的推移,在这两种环境中工作,以最大限度地学习。
50%的前端工程师在拥有10名或以上前端开发人员的公司工作,27%的工程师在拥有50名或以上前端开发人员的公司工作,这一统计数据也可能是团队为大型前端团队构建工具的有趣提示。这些地方似乎越来越多。
2.7 公司规模
-
大于501人: 30.1%
-
51~200人: 20.4%
-
11~50人: 19.9%
-
2~10人: 10.5%
-
201~500人: 10.2%
-
仅此1人(个人公司/自由职业者): 8.8%
2.8 公司前端人数
-
少于5人: 29.2%
-
10~50人: 23.7%
-
5~10人: 19.9%
-
多于100人: 18.2%
-
50~100人: 9%
2.9 本次调查问卷很少有非技术占主导地位的公司的人员参与填写
只有18%的填写调查的人说他们在非技术占主导地位的公司工作。82%的人认为自己在软件开发公司、开发机构或者技术占据主导地位的公司工作。很难说这项调查是否涉及到在更传统的公司工作的人,或者是否真的有更多的工程师在软件作为业务核心的地方工作。
无论如何,值得记住的是,调查结果绝大多数来自技术型公司。
2.10 以下哪项最能描述贵公司?
-
软件开发公司/开发机构: 41.6%
-
技术占主导地位: 41.2%
-
非技术占主导地位: 12.3%
-
其他: 2.9%
-
政府部门: 1.9%
三、 框架
3.1 开发人员在选择框架时都会考虑到如何做到良好的实践和落地
"对我来说,2022年结果的故事是框架的兴起。开发人员似乎越来越希望元框架能够更快、更有信心地工作。调查显示,受访者越来越可能关注以下最佳实践(例如性能和最终用户体验),这完全解释了这种向元框架发展的趋势。"-- Sébastien Chopin(NuxtLabs首席执行官兼Nuxt作者)
3.2 在过去的一年里,您使用并喜欢以下哪些框架?
-
React: 76.2%
-
Next.js: 43.1%
-
Vue: 28.9%
-
Angular: 22%
-
Svelte: 16.9%
-
Gatsby: 11.6%
-
Nuxt.js 9.4%
-
Remix: 8.8%
-
Ember.js: 4.5%
-
其他: 4.3%
-
Backbone.js: 1.9%
3.3 在过去的一年里,您使用过的框架中,哪些是您不喜欢的?
-
Angular: 51%
-
React: 25%
-
Gatsby: 17.7%
-
Vue: 17%
-
Backbone.js: 11.3%
-
Ember.js: 9.4%
-
Next.js: 8.3%
-
Svelte: 4.6%
-
Nuxt.js 4.1%
-
其他: 2.8%
-
Remix: 2.5%
3.4 无障碍性
无障碍性是今年受访者的一个主要关注点,63%的人预测在未来几年内它将越来越受欢迎。框架往往提供不同的方法来解决这个问题,其中有一些值得注意的例子,包括Next/Nuxt Image、HTML validator和WebHint。Chrome Aurora团队正在与Angular、Next和Nuxt等元框架合作,以确保实现这些最佳实践。我预测,在未来几年,我们可能会看到所有这些主要框架的持续改进。
组件驱动开发也受到大多数开发人员的欢迎,考虑到React、Vue、Svelte甚至Web组件的流行,这一点很有意义(如今年的独立成功案例——Wordle)。
渐进式Web应用程序(PWA)也越来越流行,开发人员热衷于使用相同的核心代码库充分利用跨平台开发。我们还看到像开放网络倡导组织(Open Web Advocacy,简称OWA)这样的组织推动苹果拥抱开放网络。这绝对是一个值得效仿的空间。
无头CMS(headless CMS)也在进步,采用率更高,并更多地集成到框架中。对于我来说,Nuxt 3已经发布了新的Prismic、Strapi、Sanity、Storyblock和Directus模块,可以零配置或者极少需要额外的配置即可使用。
3.5 您希望在未来学习以下哪些框架?
-
Svelte: 49.2%
-
Remix: 36.2%
-
Next.js: 33.5%
-
Vue: 28.1%
-
React: 16.2%
-
Nuxt.js 13%
-
Gatsby: 10.5%
-
Angular: 8%
-
Ember.js: 3.2%
-
其他: 2.7%
-
Backbone.js: 1.3%
我还注意到另一个趋势,这是没有明确提到这项调查。边缘渲染最初由CloudFlare及其worker平台驱动。调查中的大多数部署目标都发布或实现了自己的serverless或edge functions,这并不是偶然的,用户很快就会采用这些功能。Nuxt 3、Remix或Sveltekit等框架正朝着这个方向发展,直接在CDN级别实现按需渲染。随着服务器呈现的应用程序在减少延迟和降低成本方面的相应收益,我预测这将成为2023年的一个重点。
四、库
4.1 Redux&Lodash–广泛使用,喜欢还是…不喜欢?
"无论您如何看待Redux和Lodash,前端开发人员(自愿或不自愿)肯定会使用它们。在喜欢和不喜欢的解决方案中,他们都名列前三,这让我想知道,为什么人们会使用他们不喜欢的解决方案。我有几个理论。"-- Andrzej Wysoczański(Software House前端负责人)
4.2 在过去的一年里,您使用的并喜欢的库有哪些?
-
Axios: 61.5%
-
Lodash: 46.6%
-
Redux: 37.3%
-
Date-FNS: 34.6%
-
Moment: 31.9%
-
Apollo: 26%
-
RxJS: 23.5%