你在瓶颈期吗?
通常工作经验为 1 - 3 年的前端开发会遇到瓶颈期,进入瓶颈期有以下特征:
- 每天被大量重复低效的工作内容占据,无法安排出自学成长的时间
- 一直重复编写曾经写过的类似页面和实现过的交互和功能(甚至每天仅靠复制粘贴编程)
- 迷失学习的方向,不知道下一步该学什么,也不知道怎样进一步提升自己的前端技能
以下建议,不分先后,自由选择,可同步进行!
1. 提升前端研发效能
如果将计划1天完成的任务在半天内完成,那么你便多出了半天的自学时间!
具体方式如下:
- 将常用功能封装成包(将自己开发的包发布到npmjs.com中,方便随时安装)、组件(沉淀自己的组件库,来弥补第三方组件库的不足)、或子工程(微前端思想: git submodule、npm 包依赖等),方便高效复用
- 搭建自己的脚手架 —— 标准化项目创建、配置、代码提交和部署发布流程。
- 掌握更多IDE的提效插件和使用技巧
- 推荐 UI 使用 Sketch 出设计图,或自己使用 Pixcook 通过 psd 自动生成标注的前端代码
- 积累更多行业的项目模板 —— 不同行业的项目通常有统一的业务和风格,比如博客、商城、教育培训平台、旅游……,可以按行业各提前开发好相应的代码模板,需要时稍作改动即可使用。
- 开发一些工具,例如代码生成器、可视化开发工具等等
2. 积累更多复杂项目的开发经验
复杂项目的特征
- 交互复杂(无现成组件,需自行研发的复杂交互,如类似在线绘图,P图等操作)
- 数据结构和状态复杂(存在多层嵌套,需多页面数据共享和状态保持)
- 多项目互相依赖(多个前端项目间相互链接跳转/内嵌组合,组件共享)
- 存在多样的项目打包构建和部署方式
- 涉及多种性能优化方案
- 引入多种优秀的第三方库,并涉及对第三方库的二次开发
参与复杂项目开发的途径
- 主动申请参与公司内的复杂项目的开发
- 跳槽去更大更注重项目品质拥有大客户量的复杂项目的公司
- 选购优质的线上实战/体系课,跟随老师的讲解,亲手写一遍课程中的复杂项目,还可在原有基础上继续优化拓展。
- 利用业余时间仿写优秀网站/软件/页面,或自行尝试设计和实现复杂交互的项目。
- 利用业余时间和其他前端开发一起自行设计开发或承接有报酬的复杂项目。
- 研读优秀的开源源码,将其中的技巧使用到自己的项目中。
3. 标准化开发流程
- 使用 git flow 实现 git 提交代码的标准化
- 有标准的 lint 工具,统一代码编写风格和规范
- 编写可自动化执行的单元测试代码和方案
- PR review - 借助代码审核和其他前端开发工程师交流和学习
- CI/CD - 使用持续集成和自动化部署
4. 通过面试检验自己的能力,寻找成长方向
- 了解现阶段自己在前端市场的身价
- 了解市场上正火热和广泛使用的前端技术和技能要求
- 面试过程中总结自己的前端知识和技能的弱点和盲区
5. 加强对基础技能的深度理解
- CSS的新兴功能,如CSS动画、网格布局等,沉淀常用的全局css和实用的css技巧
- JS 的进阶学习,如ES6、闭包、递归、原型链、继承等,沉淀常用的js函数和算法
- 对设计模式的理解和使用。
6. 拓展学习更多前端外的技能
- 自动化测试
- 自动化构建和部署
- 学一门后端语言
……
7. 加入前端开发群,和更多优秀的前端一起交流成长!