AIGC 时代下前端开发范式迁移与工程师成长路径
AIGC(人工智能生成内容)这一时代潮流已然不可阻挡,我们要做的不是慌乱,而是把握住这个时代的机会。本文旨在探讨在 AIGC 背景下,前端工程师即将面临的挑战和机遇,分析从过去到现在 AIGC 带来的变化,并展望下一代前端工程师的发展方向。
1. 疯狂的 AIGC
记得 ChatGPT-4 刚出来的时候,OpenAI 高管曾用笔和纸画了一个网页草图,GPT-4 仅用几秒的时间便完成了网页的设计和代码的编写。这种效率的提升令人震撼。
![图:ChatGPT 根据草图生成网页演示]
当时很多前端同学可能会感到焦虑,担心好不容易掌握的 Vue 源码知识变得不再重要,甚至担心饭碗不保。当然,这只是一个玩笑。AI 技术已然如此,此时我们不得不面对那个老生常谈的问题:前端工程师们该何去何从?
社区中对此持两种态度:
- 悲观派:认为前端已死,不值得继续深耕,AI 很快就会替代人工。
- 乐观派:认为 AI 是神级辅助,不消耗经济成本且能带来巨大效用。
我的观点是:AIGC 一定会对前端开发的未来产生重大影响。至于这个影响对于前端工程师来说是正是反,从来都不是工具决定的,而是使用工具的人来决定的。我们要做的,不是去担忧焦虑,而是积极拥抱并把握它。
2. 范式迁移 —— AIGC 下开发模式改变的本质
要理解 AIGC 的影响,我们需要先回顾前端开发这些年的发展脉络。
2.1 命令式 -> 声明式
命令式编程:关注过程,代码能够与自然语言产生一一对应的关系,代码本身描述的是'做事的过程'。例如 jQuery 就是典型的命令式开发代表。这种范式的出现让前端开发变得高效,但还远远不够。
声明式编程:关注结果,过程在背后,暴露给用户的是声明的结果。随着 Vue、React 的现世,前端开发迅速地从命令式迁移到了声明式。
前端开发范式演变:命令式 -> 声明式
经常会在社区看到这样的提问:'该学 Vue 还是 React 呢?项目该用 Vue 还是 React 呢?',这个问题一直都在争论,一直也没有一个明确的答案。可如果有人问到:'该用 jQuery 呢还是 MVVM 框架开发呢?',我想这个问题是有标准答案的。
为什么会这样呢?很简单,jQuery 和 Vue/React 的最本质的区别就在于范式的不同,从命令式到声明式的进化。
为什么前端领域普遍接受了这种范式的迁移?在我看来,有两个核心原因:
- 效率的极大提高:业务逻辑越复杂,命令式需要做的工作便越多,因为你要完整去描述整个过程才能实现。而声明式却不需要,只要把结果交给声明式框架,框架背后的命令帮忙做了大量的工作,所以在效率上,命令式和声明式不可同日而语。
- 更完整更系统:jQuery 只是一个工具,它能做的仅仅是在使用层面加一点速,无法带来质变。而声明式的框架带来了完整的开发体验、系统的打包和发布流程。
2.2 声明式 -> AIGC 式
虽然声明式为前端开发带来了极大提升,从效率和完整性皆是。但有一点它还是没有解决,还是有大量的重复劳动性的工作需要开发者来实现,比如模板编写、样式开发、基础函数编写等等。
这也是为什么,社区出现了大量的诸如低代码这样工具来力图解决此问题:
- 设计稿转代码:像 CoDesign/Figma 等工具,能够很大程度上解决手动写模板写样式的工作。
- 图片转代码:相较设计稿转代码,它想要做得更多,直接生成模板结构和样式,一键复制即可在项目中运行,比如 imgcook。
- 低代码/零代码:以腾讯 UICore 为代表的,在声明式范式下,为能够更加彻底地解决重复劳动,降低开发成本而出现。
工具虽多,也很好用,但这些工具发展了这么多年,似乎并没有能够彻底改变前端开发。为什么呢?因为这些工具相对于声明式而言,其实和 jQuery 相对于原生 JS 是一样的。都没有逃离所处的范式,jQuery 没有逃离 JS 的命令式,这些工具也没有逃离声明式。
原地打圈,不得始终。
那 AIGC 式做到了吗?当然,否则也不用讲了。声明式仍然需要前端工程师辛苦地码代码,即便有工具可以提效,但码农依旧得不到解放,至少大部分业务情况下是无法解放的。
而 AIGC 彻底地颠覆了这一范式。具体如何颠覆的,相信文章开头的视频已经给出了答案,从理解到设计再到编码,甚至部署发布,AI 已经不可阻挡了。


