惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

有赞技术团队
有赞技术团队
小众软件
小众软件
The Cloudflare Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
雷峰网
雷峰网
Jina AI
Jina AI
博客园 - 【当耐特】
V
Visual Studio Blog
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
量子位
IT之家
IT之家
G
Google Developers Blog
V
V2EX
The GitHub Blog
The GitHub Blog
月光博客
月光博客
GbyAI
GbyAI

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
我的7年前端开发旅途 - 少数派
2024-01-10 · via 少数派

截至2024年1月9日,如果将大四那一年的实习经验也算在内,我的前端开发之旅已经持续了长达7年之久。在此,我想回顾一下自己的成长历程。

我在大学主修软件工程。如同国内的许多其他大学一样,起初我们学习的内容都是一些较为传统的技术,比如Java和C#;甚至还学习了如今已经被淘汰的Apache Struts 2。我加入了学校内一家类似“创业”的公司,在Eclipse中开始编写JSP。这大概算是我第一次接触HTML和CSS,当时我还没有形成对前端的清晰概念,仅仅是觉得制作页面和样式比编写逻辑更有趣。后来,我甚至创建了一个名为Hover的CSS动画库,使用了Jade和Sass。那个时候,像Jade、Pug、EJS这类模板引擎似乎颇为流行。随后,我又接触到了Hexo这样的静态博客,并为其编写了一个主题。这些都是我在大四之前的故事。

2017年,我找到了第一份工作,算是比较幸运的。尽管公司不是完美的,但他们接受了我大四的身份,并在我的建议下采用了Umi这个框架。当时的前端技术还在飞速发展中,React、Vue和Angular构成了所谓的前端三大框架。个人而言,我认为React当时的势头是最猛的,得益于阿里的Ant Design等UI库的支持,选择React成为了很多Web端项目的自然选择。在App开发方面,我们也使用了React Native。尽管这家公司可能是我职业生涯中最差的一家,但我还是非常感激那份工作,因为它让我积累了丰富的业务经验,也让我对前后端分离和前端工程化有了初步的理解。

2018年,我转到了第二份工作,并以为自己会找到一家使用React的公司。然而,我最终加入了一家初创公司,其技术栈非常多样化,这也是我成长最快的一段时间。在那里,我接触到了Node.js、Vue、Electron、Nginx以及服务器相关的技术。我的第一个项目是一个需要对搜索引擎友好的C端项目,起初我使用Vue进行开发,但很快发现SPA并不利于SEO。在同事的帮助下,我将其改为了Node.js的模板渲染方式,这有点像换了一种语言的JSP。如果是在2024年做这个项目,那么技术选型可能就会是Nuxt.js。后续的项目让我接触到了更复杂的前端计算问题,以及Electron这样的跨平台开发方案。除了技术的多样性,我还涉猎了项目部署,甚至处理了服务器的挖矿病毒问题。那段时间,我打下了大部分前端以外技能的基础。

在2020年的第三份工作中,每次面试都显得令人困惑。公司起初承诺我将从事前端开发工作,但后来却让我使用COCOS进行游戏开发。尽管我喜欢玩游戏,但我对游戏开发几乎没有兴趣。长期处于这样的工作环境,被迫编写我不喜欢的代码,将会让我非常不快乐。这实际上触及了一个鲜为人谈及的问题——对开发体验的忽视。带着不满去编码,面对更优方案的束手无策,这些都会让人痛苦。而且,这样的情绪也难免会影响到代码的质量。但有时候,我们似乎别无选择,比如尽管我不喜欢UniApp,但对于目前的团队可能它确实是最佳选项。我个人并没有足够的影响力去推动替换这个方案。

2020年年中的第四份工作,虽然业界对外包的评价不甚好,但回顾2024年的这段外包经历,我认为它还算可接受。这家外包公司位于机场内。大部分工作涉及使用Vue2来开发B端的管理后台,完成CRUD操作以及EChart图表的集成。工作十分稳定,但也无比单调,我甚至开始将编程看作一种单纯的体力劳动。在2020至2022年的三年时间里,我几乎没有机会接触到前端技术的最新发展(比如Vue3、React17+、Tailwind CSS),渡过了一段迷茫的时光。现在回顾,除了对Vue2的熟练掌握和对业务的深入理解之外,似乎并没有更多值得总结的收获。不过,其中一个项目,直到今天,它的DAU数依然是一个难以超越的高点。

2021年得益于甲方赏识,我加入了甲方,在这里,我享受着朝九晚五的生活节奏,不久后提升为前端小组副组长,开始处理更复杂的业务问题。至2023年,我推动团队大规模采用Vue3和TypeScript,这不仅提升了团队成员的技术水平,也重新点燃了我参与开源项目的热忱。这一变革起始于我自己组装的NAS服务器。尽管UnRaid系统已逐渐成熟,但作为一个程序员,我决定手动重塑很多功能。在这个过程中,我补充了网络技术的知识,也拓宽了我对技术的视野。我不再满足于前端技术,还自学了Swift和Rust,并尝试用Rust实现Redis,尽管这个项目暂时被我搁置了。 我认为2023年可以被视为AIGC的元年。我利用了GPT-4和GitHub Copilot来辅助编程,从一个习惯于复制粘贴的程序员转变为了依赖自动完成代码的程序员。前端技术在经历了几年的快速发展后,也进入了一个相对稳定的阶段,开始深入发展。

在2023年的团队总结会上,我向组员提出了一个问题:Vue仅仅是一个npm包吗?答案是:不仅仅是。理论上,Vue可以直接在HTML中实现,就像使用jQuery那样,这也是可行的。但在大多数情况下,我们讨论Vue时,实际上是在谈论Vue的生态系统,包括Vue本身、Vuex/pinia、Vue-Router等。而这些技术的使用场景也遍及各个终端平台。

正如时间的车轮滚滚向前,我的前端旅程也映照了技术的迅猛进展和个人成长的宝贵经历。过去七年,我由一位对前端充满好奇的大学生,成长为一个对技术充满热情、经验丰富的工程师。每一段经历都是我技艺成熟的里程碑,让我从制作简单的网页到构建复杂的用户界面,从理解基本的编程逻辑到深入掌握前端架构,我感受到了技术带来的不断变革。

前端的旅程尚未结束,而我对它的热爱依旧炽烈如初,准备好迎接新的挑战和探索更广阔的天地。