关于什么是前端架构师的讨论

本文只做讨论和个人的一些观点,不喜勿喷,文明交流.

我个人是个8年老前端开发,马上就9年了。12年大一,作为亲戚朋友里的本科独苗,选什么专业真的没有人可以参考,那时候互联网不发达,还没有张雪峰老师.只能自己摸索了,当时我爸让我选土木工程,因为他在工地做事看到不少大学生管事的。我当时家里有个小霸王游戏机,我觉得游戏很好玩,想着读个计算机以后去做游戏吧。就鬼使神差的报了计算机科学与技术,还好父母开明,如了我的愿,也算是吃到了互联网最后一波红利了。

大四实习的时候,我可能忘了当时想毕业做游戏的初衷,进了一家内网安全的互联网公司实习,做开发。当时前后端分离还不流行,写的是JSP项目。后来16年的时候Angular.js、Vue.js开始流行,随着用户对前端的要求越来越高,后端连带着写前端已经不能满足当下的市场环境了。前后端分离的项目开始流行,那时候才有了前端工程师。于是我就开始做前端了,开始了我的第一个前端项目。

现在在这家公司,以前端架构师的Title入职,结果进去后,能力遭到质疑,因为领导也不懂开发。让公司总架构师来单独找我谈话,第一个问题就是: 你觉得前端架构师需要具备哪些能力?我当时懵逼了,因为我已经知道领导对我能力质疑了,让他来给我下最后通牒了。然后我就回答了。

  1. 在前端技术有足够广的涉猎和足够深的基础
  2. 足够长的前端领域的开发经验
  3. 保持学习,对新的技术要有钻研态度,要思考新的技术解决了什么问题
  4. 要有为公司选择合适框架的能力,能分辨项目适合什么技术栈.

架构师接着问:

展开讲讲?

我个人,喜欢看一些技术贴,公众号,掘金等平台,接触一些新的技术,并尝试实践,把合适的运用到实际中,比如说:新的语法,可选链出来好几年了,但之前面试外包,好多人听都没听过,我解释后,他们说这个可以用来替代三元运算符,但再问具体的,就讲不清楚了,这些人没有持续学习的习惯。再比如说Vite为什么比Webpack快,模块联邦为了解决什么问题,和微前端框架有什么区别。Rspack又是什么?Rust又是什么,跟前端开发有什么关系。这些只能是在社区了解,并下手实践才能明白了。

回答完后,公司总架构师顿了顿,问我来了多久,我说不到一个月,然后他就说我们以为你来了一个多月了.然后又问你觉得公司前端团队怎么样,需不需要调整.我当时对内部的几个前端做了一个主观上的评价,谈话就结束了.现在从结果上看是通过了试用期,转正了.但是给我的职位就是开发,没有管理职能.

自己关于前端的一些思考

普通页码可以让AI做了

现在常见的页面,都能用AI生成了,前段时间我认识的一个产品经理,失业在家,用Cursor自己做了一个应用,AI真大厉害了。他说后端接口要自己写,但页码基本上不用自己写。这么说前端离下岗又近了一步了。

模块联邦可能是很好避免重复造轮子的方案

模块联邦做模块复用,可能是解决企业重复造轮子的一个方案,毕竟这个在前公司实践过,把公共组件、模块抽离到一个公共的服务,其他应用去调用,这时候所有应用都能体验模块联邦服务的更新了。免去了npm包的更新问题和发布规范的问题。对模块联邦感兴趣的,可以看我这篇文章。

Rspack可能是未来

最近几年Vite的更新迭代非常快,得益于原生ES module,使得启动和热部署效率非常高,只是生态比Webpack差,但慢慢也能跟上。但是有个缺陷,Vite的开发和生产对于的包体是不一样的。生产还是会编译成Common.js,这个差异会在极少数情况下出问题。Rspack底层全是Rust,并致力于兼容Webpack生态,所以Vite的2个问题它都解决了,有可能Rspack会是未来。

Rust可能会成为前端大型工具的基础开发语言

前端卡顿活捉耗时,无非就2中情况。

1.一次渲染太多Dom,渲染经常和JS主线程互斥,渲染太多Dom导致页面无法响应用户事件,导致卡。

2.JS一次执行太大的任务,比如说遍历一万条数据。这时候主线程繁忙,页码无法渲染,比如页码Loading可能不动了。

对于第一种卡顿,已经有很好的解决方案了,像React和Vue的虚拟Dom,惰性渲染,Diff宣发等,都是为了解决减少不必要的渲染。requestIdleCallbacK和React的Fiber架构可以在浏览器空闲的时候渲染Dom。对requestIdleCallbacK感兴趣的可以看我的这篇文章

第二种JS执行大型任务在多数情况下,是实现的不合理,比如说很多时候我们都会DeepClone一个数据,再来做业务开发,这个数据可能是后端返回的,里面有下拉框的选项,如果这个选项有一万条,那这个DeepClone会非常耗时,导致页码卡死。这时候要考虑是否是必须要拷贝这一万条数据了,通常情况下是非必须的。如果是必须的可以使用webworker来解决。对webworker感兴趣的可以看我这篇文章。但对于打包这种计算密集型的场景,JS语言的上限就在那里了,很难突破优化。于是就有了Rspack这种打包编译工具。

最后

最后大家有没有一些思考或者建议呢?对于我这个双非普通本科,没有大厂背景的开发仔,怎么才能破局?或者说前端的出路是什么?

相关推荐
崔庆才丨静觅7 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60618 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了8 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅8 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅8 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅9 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment9 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅9 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊9 小时前
jwt介绍
前端
yunteng5219 小时前
通用架构(同城双活)(单点接入)
架构·同城双活·单点接入