年终总结:前端五年工作生涯的回顾

2,300 阅读6分钟

大家好,我是鸭梨,不知不觉间自从毕业后,在前端行业已经摸爬滚打五年了,经历了前端从 Jquery时代 到 框架时代 的转变,期间也进行了几次的技术升级与扩展。临近年末,从以下几个方面,回顾了一下这几年来从事前端工作和学习的经验历程:

  • 对于前端工作的理解
  • 对于前端知识的理解
  • 初期前端工作
  • 中期前端工作
  • 目前开发工作

1、对于前端工作的理解

美:前端开发作为直接与用户交互的部分,优美的设计、简捷的流程,最能直接影响到用户对于产品的印象,好产品就像“美食”需要是“色香味俱全”一样,“色”也是排在了第一位。开发一个产品,即使用了最先进的技术、最稳定的框架,但是最后呈现的时候,不够优美、不够简捷,用户只会觉得产品很“low”,开发团队不够专业。这一点,是目前很多前端开发者所忽略的,需要开发者重视起来,有一些耐心和美感去提升页面的质量。

快:同样,前端工作作为产品开发中的最终呈现,工作中需要与 需求、设计、后端、项目经理等等各个环节去沟通、去发现项目前期准备中的不足,甚至需要去弥补、适配这些错误,所以等到“耐心地”帮助后端同事把接口中的错误测出来了,各个环节也捋通畅了,就会发现剩给前端开发的时间不多了。如果不想背锅,快速开发的能力就尤为重要。这种能力的锻炼需要平时多去积累常见的功能场景,对于常见功能的积累,下文会说到。

规范:在工作中见过,在每个组件都引入一遍vue、vuex的项目、私自搭建的脚手架都是.html页面,每个页面里面用script引入vue.js的项目,所以项目脚手架的搭建,还是需要注意一下的,可以参考使用vue-cli、ant design pro、umi、TDesign等开源项目。另外,由于 JavaScript 语言的灵活性,造成了很多前端开发者对于规范理念的缺失,所以对于团队来说,需要用 ESLint + Prettier等代码检查工具去加强对于前端代码质量的检查。

参考链接:脚手架代码规范与检查

2、对于前端知识的理解

渐进式知识体系:初学前端的时候,看到 html、css、less、sass、Js、Es、Ts、Vue、React等这些概念,可能觉得前端知识太杂了、太乱了,这也是前端近几年飞速发展造成的问题,并没有像 比如Java 那样经历过了十几年的发展,已经很稳定、很全面了。不过就像 vue.js 是 渐进式 JavaScript 框架一样,我觉得 前端知识 也是 渐进式 的知识体系,需要我们在掌握了最核心的 html、css、Js概念的基础上,然后在去 学习和使用相关的 扩展方案,比如 Tailwind CSS、ES6等。

3、初期前端工作回顾

犹记得工作初期,天天晚上啃“犀牛书”和“红皮书”的场景,相信每一位前端开发工作者都被这两本书折磨过。大量阅读书籍对于初期建立和完善知识体系与开阔眼界确实是很重要的。

比如:《图解Css3》可以更好地掌握Css整体的知识体系,《Css揭秘》则可以学到更多天马行空的复杂样式设计,《深入理解ES6》对于ES6语法的讲解等等这些优秀的技术书籍。

同时,经常去看最常用、最基础框架的官网,熟悉这些框架提出的各种概念,熟练使用这些框架去解决相关问题。

参考链接:常用官网

4、中期前端工作回顾

随着 开发经验 的积累和 学习知识 的增加,逐步熟悉和完善了:

  • vue体系的移动端基础框架
  • vue体系的后台管理系统基础框架
  • react体系的阿里开源框架:ant design pro、umi等
  • Node相关的体系:Koa、Express,mongoose、mongodb等相关包的使用

一些顺手的项目脚手架,可以帮助在面临新项目需求的时候,更快、更优地做出技术选择。

同时,在学习与搭建这些框架的同时,注意到了更多的技术场景,比如:

  • 骨架屏
  • 长列表优化
  • 国际化
  • 大文件分片上传
  • 移动端手势
  • 递归组件
  • 单点登录
  • 后台管理系统权限处理 等等场景,平时实现和积累这些场景,对于技术的提升很有帮助!

参考链接:常见功能

另外,经常浏览 GitHub、码云、Npm等社区,会帮助我们发现更多地场景与很多优秀的解决方案!通过读一些包,也可以学到很多编程知识。

同时,对于 前后端知识 的学习,也熟悉贯通了项目技术开发时的整个流程,也开始注意到一些必要或者会很有帮助的系统,比如:埋点监控系统、CMS内容管理系统、项目管理系统 等常见的项目。

5、目前对于开发工作的认知

一年多来,工作之余,学习了 Java、Spring相关的开发知识,感觉 Spring Boot 和 Spring Cloud 完善的体系,对于使用其他后台语言,比如:Node, 去开发后台接口极具有借鉴意义。

同时,立足于 前后端技术 与 对工作项目的学习,对于系统的整体设计,有了更深的认识。注意到各种系统因为作用不同,所以整体技术选型存在很大差异,比如:秒杀系统 和 内容管理系统 肯定不同。

所以,可能以后的工作和学习重点,是去 新实现 或者 改造一些开源的 常用系统,去提升工作效率和业务效率。

同时,争取针对不同的业务需要,积累相应的技术解决方案,明了相应的技术架构。

6、结束语

在技术学习成长过程中,也有很多困惑的时候,但是坚持学习、坚持积累,等到知识融会贯通的时候,自然会对系统有“庖丁解牛”般的见解,也会找到属于自己的技术兴趣所在。