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

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

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

我入职了一家新单位,这家单位的没有太多规范,没有太多的组件封装积累,还会考核每周的代码量,我发现有些阶段代码量(测试阶段、需求阶段等)不够的时候大家都是往项目中塞没用的代码,还有些同学会复制公共组件的代码进自己的模块充代码,技术栈使用的是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有一定的理解并写出apply、call、bind的实现。
  • 对类型判断instanceof、typeof、Object.prototype.toString.call等方法有理解。
  • 对对象方法的使用Object.keys、Object.values、Object.entries、Object.assign等等
  1. 去看下lodash的源码,例如:throttle、debounce、cloneDeep、groupBy、get、difference等等一些常用的方法函数要会写源码,最好自己写一遍。

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

  3. CSS 中对主题适配能有一定的理解,例如使用 less 和 Scss变量做主题适配,以及使用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. 如果你对vue和react想深入研究,可以对比着使用看看它们之前的差异,有自己的认识。

  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. ...

结语

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

相关推荐
卸任10 分钟前
Vibe coding工具使用心得
前端·ai编程
brien91 小时前
为什么模型标称 1M,Google Antigravity 聊到 256K 却突然失忆?我们给它做了个原生行内监控圆环
前端
修炼的dance1 小时前
录屏关键帧间隔多少合适?六档实测,2秒到10秒小了75.6%
前端
Lank_M1 小时前
关键帧从1秒拉到10秒,录屏小87.3%,摄像头小10.8%
前端
补码缩写1 小时前
用 ffprobe 拆录屏,八成字节在 29 个关键帧上
前端
百思不得小李1 小时前
一个复杂的动态表单是如何实现的
前端·设计模式
陈随易2 小时前
Cmder 停更 17 个月,2.0 支持 Windows Terminal
前端·后端·程序员
风骏时光牛马2 小时前
前沿视界
前端
kyriewen2 小时前
我扫了 814 个依赖,97 个还敢要 Node 10
前端·javascript·程序员
陈随易2 小时前
3000 万人在用的翻译插件,重写一遍就是一门生意
前端·后端·程序员