写给我前端同事,从事一年多应该要怎么成长的路线

写给我前端同事,从事一年多前端应该要怎么成长的路线

我知道在很多中大型公司,其实有好多领导前辈、以及师傅会给那些校招生,以及应届生规划一定的学习成长路线,可能还会有定期的大佬分享。有这么一个领路人、环境在其实成长是飞速的。

我入职了一家新单位,这家单位的没有太多规范,没有太多的组件封装积累,还会考核每周的代码量,我发现有些阶段代码量(测试阶段、需求阶段等)不够的时候大家都是往项目中塞没用的代码,还有些同学会复制公共组件的代码进自己的模块充代码,技术栈使用的是vue3 + js + ant-design-vue,一大部分人做的都是项目

苏洋同学(化名)工作了2年左右,换过2家公司,第一家是个小公司也是在写一些后台管理的功能,这是他的第二家公司入职这家公司也有一年左右时间了。他逻辑,工作态度都没问题,也算是个积极上进的零零后好青年。他当前项目中的代码开发没问题,项目中多是一些业务表单,工作流之类的东西,有用户权限控制。有的时候他会请教我一些问题我俩也就从问题聊了聊技术,并且我把我的博客分享给了他,他说他有空会看看学习下。

我跟他从我的博客文章中聊了下他可能需要怎么做来获得成长,当然现在这个环境下我不能跟他说你多学一点可能工资就会高一些,假如在3年前我一定会告诉他,你学完这些其实可以换个公司去试试一定会比你现在的要高一点。可能学习完假如被迫换工作(裁员)了,机会会大点吧

大佬请绕路,我可能给的建议并不是最好的,但是我觉得对他来说现阶段是最使用的

针对他的成长经历规划

他的js基础可能没那么好,像一些数据处理上是有些问题,那么我建议他:

  1. 重新学习下js针对数组,字符串等API,像字符串的cancat、includes、indexOf、lastIndexOf、endsWith、startsWith等等,像数组的forEach、map、filter、reduce、find、findIndex、some、every等等,他说他有些好像没有使用过。 学习了解用法,并且写一样的源码。例如:
ts 复制代码
'123'.endsWith('3'); // true

export const _endsWith = (source: string, target: string) => {
  const len = target.length;
  const substrValue = source.substr(source.length - len, len);

  return substrValue === target;
};

_endsWith('123456', '56'); // true
  • 要有一定的理解,对深拷贝、浅拷贝有一定的理解。
  • 宏任务微任务以及事件执行的理解。
  • 防抖节流有一定的理解
  • this有一定的理解并写出applycallbind的实现。
  • 对类型判断instanceoftypeofObject.prototype.toString.call等方法有理解。
  • 对对象方法的使用Object.keys、Object.values、Object.entries、Object.assign等等
  1. 去看下lodash的源码,例如:throttle、debounce、cloneDeep、groupBy、get、difference等等一些常用的方法函数要会写源码,最好自己写一遍。

  2. 对正则表达式能对有一定的理解,并且写出一些常用的正则。

  3. CSS 中对主题适配能有一定的理解,例如使用 lessScss变量做主题适配,以及使用2套样式,或者使用css全局变量做主题适配。能区分出这几种的不同点

如果能把js的以上都能掌握了,那么你的基础算是扎实的了,差的可能就是工作经验以及深入了解一些框架的源码了。

  1. 这个时候可以学习下代码规范了,其实vue的话可以看看element ui组件代码的规范,组件的设计以及源码具体。至少能实现message组件以及按钮组件

  2. 学习下设计模式,例如:单例模式策略模式代理模式发布订阅模式等等。

  3. 可以多看看怎么写防御式编程,让你的代码更加健壮(这也就是为啥项目中bug多的问题,代码写的还不够严谨)

  4. 可以去学习下TS,可能不用去特别做类型体操,基本的泛型能用,例如:Array<T>Record<K, T>Partial<T>Pick<T, K>Omit<T, K>Exclude<T, U>Extract<T, U>等等。

  5. 如果你对vuereact想深入研究,可以对比着使用看看它们之前的差异,有自己的认识。

  6. webpack的配置,对打包优化有理解,对loader和plugin有理解,对打包工具有使用过。

  7. 了解下npm,对npm 发布等命令有一定的理解,并且尝试自己发布一个包。

  8. git提交规范有理解,并且使用。可以深入了解下git规范定义以及拦截。

  9. nginx 有一定的了解,并且使用。因为现在好多项目都是多页应用了,nginx就显得很重要了。

  10. echarts 是图表库,可以学习下他的那些简单图表怎么使用canvas画出来的。

恭喜,假如你上面都能学会,我觉得你很了不起了,至少算是中级前端工程师

  1. 制定公司代码规范eslint, git 提交规范等等

  2. git CI制定工作流是很重要的,可以学习下。

  3. ...

  4. ...

  5. ...

结语

其实如果从事这个行业,可以把上面当作一个学习清单,然后按照顺序学习,这些都是必须且要学会的。然后把学习到的东西都记录下来。多总结,多思考,

相关推荐
0wioiw04 分钟前
Flutter基础(前端教程④-组件拼接)
前端·flutter
花生侠29 分钟前
记录:前端项目使用pnpm+husky(v9)+commitlint,提交代码格式化校验
前端
一涯36 分钟前
Cursor操作面板改为垂直
前端
我要让全世界知道我很低调43 分钟前
记一次 Vite 下的白屏优化
前端·css
1undefined21 小时前
element中的Table改造成虚拟列表,并封装成hooks
前端·javascript·vue.js
蓝倾1 小时前
淘宝批量获取商品SKU实战案例
前端·后端·api
comelong1 小时前
Docker容器启动postgres端口映射失败问题
前端
花海如潮淹1 小时前
硬件产品研发管理工具实战指南
前端·python
用户3802258598241 小时前
vue3源码解析:依赖收集
前端·vue.js