写点什么

一篇文章搞懂前端学习方法与构建知识体系

用户头像
三钻
关注
发布于: 2020 年 08 月 29 日
一篇文章搞懂前端学习方法与构建知识体系

前沿

在大前端的成长路上,很多的同学都非常的迷茫,看到一座座越来越高的山。慢慢在工作中也对自己的职业发展也特别迷茫。有些粉丝也私信我问过我一些职业发展的问题,还有“我应该学习什么技术?”,“学习到什么层级才是个头”。



这次我给大家带来一遍文章,给大家讲讲怎么样才是一个优秀的前端工程师,怎么做自己的职业规划,如何学习和构建知识体系。





什么是优秀的前端工程师?



大家眼中的优秀工程师



  • 熟练掌握Vue React

  • Web标准

  • 会用 Webpack Babel

  • 十年经验

  • 性能优化

  • 闭包,函数式编程

  • 会写NodeJS



这些其实都是错误的认知!



真正优秀的工程师



明确衡量的标准:



  • 领域知识

  • 不同工程师的工种有不一样的领域

  • 领域知识是互相关联的,不能只一方面很强

  • 能力和潜力

  • 能力 —— 明确的能力要求,或者角色的要求,能力达标就能进入下一个级别。

  • 潜力 —— 能力的上限,同样的层级的人,同样能写出同样的代码,但是区别在于独立解决问题的能力和出解决方案

  • 每年都有KPI(30% - 优秀,60% - 普通,10% - 不合格),潜力评估(预计几年内可以晋升)

  • 职业规划

  • 工程师 (P5) —— 独立工作

  • 资深工程师 (P6) —— 核心和骨干,小组长的位置,能带领突破难题

  • 专家 (P7) —— 领域专家,在某一种领域成型一种权威,推动发展,在自己的领域内可以用通用的解决办法解决问题

  • 经理 (P8)

  • 如何晋升?

  • 持续提升技术能力

  • 在领域中有沉淀

  • 成就

  • 用你达到的成就来证明你的能力

  • 根据你曾经做过的东西,曾经承担过的事情



职业规划



You are the owner of your career.



  • 很多人觉得职业规划是“老板”,“爸妈”,“老师”的事,其实你才是职业的主人

  • 很多同学在执行的时候就走形了,很多人觉得职业晋升是老板的意识,如果老板没有给我们晋升我们就认命了吗?

  • 不是的,你的职业你才是主人,职业发现的结果我们要为他负责,所以我们要有行动(要不就谈判,要不就离职等等)

  • 职业规划对我们自己影响是最大的,所以我们要有一个 owner 的态度,拿出一个方案来保障自己的结果

  • 明确知道自己在这个公司什么时间,要达到什么样一个级别,如果不能就要思考怎么做到

  • 所以在职场中,要保持一种危机感和紧迫感,如果我们一旦误就会止步不前了

  • 我们该投入的精力,没有去投入,是没有人可以为你负责的,职业发展也是一样的



职业发展



  • 成长 - 通过学习,沉淀获得成长

  • 成就 - 成长后必定能做出一定的成就,成就可以用来证明自己的技术能力级别

  • 晋升 - 获得成就就能证明自己可以晋升到下一个级别



业务型成就



  • 业务目标

  • 理解公司业务的核心目标

  • 目标转化为指标(UV,PV,页面加载时间,成交的钱)

  • 技术方案

  • 业务指标到技术指标的转化

  • 形成纸面方案、完成小规模试验

  • 实施方案

  • 确定实施目标、参与人

  • 管理实施进度

  • 结果评估

  • 数据采集、数据报表

  • 向上级汇报

  • 没有结果是不可能获得晋升的,只会落得一个“勤奋耐劳”的称号



案例



  • 业务目标 & 指标:点击率

  • 技术方案:给 tab 组件增加手势操作

  • 实施 1:在业务中加入对应功能,并上线

  • 结果:点击率提升3倍

  • 实施 2:编写通用tab组件,向所有导购业务推广,形成制度



工程型成就



  • 目标

  • 质量

  • 效率

  • 方案与实施

  • 规章制度

  • 工具

  • 系统

  • 结果

  • 线上监控



案例——XSS攻击的预防:



  • 目标 & 指标:XSS攻击白帽子反馈漏洞

  • 技术方案:整理安全手册,review历史代码,代码扫码工具

  • 实施:对全体前端宣讲,整体 review 代码,更改代码发布流程

  • 结果:XSS漏洞大幅减少



技术难题



  • 目标

  • 公认的技术难题

  • 能影响业务

  • 方案与实施

  • 依靠扎实的编程能力



例子——爬取商品价格:



  • 背景:在某浏览器插件项目中,需要爬取各个网站价格比价,但是各个网站会采用图片价格等手段防御

  • 方案:引入JS端的数字识别技术,靠AI技术解决





前端与学习方法





对学习知识体系的态度,应该不要去强求,而是去理解知识体系的完整性和框架,多面,多维度,多方面的去累积来补足,补全自己的知识体系。



  • 很多同学在质问学习的东西有没有用

  • 很多知识其实是没有用的,但是有一些微小的点可能会用上

  • 但是没有办法确切去知道它的有效性

  • 我们要知道完整的知识体系,然后抽取重要的知识点进行加固

  • 重点在于每一个知识点,看到就学一下,学不会不要紧,下次再看到时就加固学习(强扭的瓜不甜)

  • 系统化学习 + 随机性学习的结合



前端技能模型



  • 领域知识

  • 不同的领域会学到不一样的知识

  • 实践中学习

  • 前端知识

  • 建立知识体系

  • 对知识体系掌握度是重点,而不是对知识体系的量级

  • 能力 —— 刻意练习

  • 编程能力

  • 架构能力

  • 工程能力



前端技术不是武林秘籍,

真正的能力是练出来的。



学习法



1. 整理法



我们要追求的是一个完备性,而不是追求完整或者完美性。而我们重点是选择对的逻辑关系



  • 顺序关系

  • 记录一个体系的流程顺序关系

  • 组合关系

  • 纬度关系

  • 每一个维度单独看都是完整的东西

  • 多个维度去看是一个立体完整的东西

  • 分类关系

  • 按分类列出知识



整理方式



  1. 先找线索,通过搜索,看手册,看文章搜集。先找到方向

  2. 找到多份资料

  3. 进行对比,加强完整性



2. 追溯法



  • 源头 —— 从源头开始建立知识基础,提升可信度

  • 最早出现的论文、杂志

  • 最初的实现案例

  • 标准和文档 —— 找权威性,但是不能盲目的看,要做好对比,保证准确性

  • W3.org

  • Developer.mozilla.org

  • msdn.microsoft.com

  • Developer.apple.com

  • 大师 —— 可以去看他们对技术的定义,公信力更高

  • Tim Berners-Lee

  • Brendan Eich

  • Bjarne Stoustrup



通过这些方法建立知识基础,可以建立我们知识的准确性,可信度,公信力。同时在面试的时候可以提出你在那个权威的地方看到这个知识,也可以体现出你的专研和深挖能力。



通过时间的的延伸,知识会不停的演变和被不同的人重新定义,所以我们要知道并对这个知识点有全面认知,从而在不同的领域或者场景下更加能抽丝破茧的方式去理解复杂,繁杂的知识。



面试官怎么想?



面试内容三要素



  • 深度范围

  • 覆盖面

  • 区分度



面试过程



  • 打断

  • 打断意味着不感兴趣

  • 打断是一种提示

  • 如果面试官不要你,直接就让你说,然后叫你走就好了

  • 争论

  • 争论与压力面试 —— 保持自己优雅仪表和态度

  • 争论的技巧 —— 用追溯法找到可信度高来表达

  • 难题

  • 展现分析过程 —— 一边想一边说

  • 缩小规模 —— 化繁为简,把问题拆解



问题类型



  • 项目型

  • 针对项目询问

  • 项目中实现了什么?

  • 遇到了什么难题,又是怎么解决的?

  • 主要考量我们在项目中体现出来的能力和思维

  • 知识型

  • 体现自己的知识体系

  • 会就会,不会就不会

  • 开放性问题

  • 通常是没有标准答案的问题

  • 设计方案的能力

  • 思维活跃程度

  • 管理型问题

  • 案例性问题

  • 设计、编程类

  • 给予场景并且给出解决方案

  • 用来考验我们平时的工作状态

  • 看的是过程不是结果(结果答的是正确的,过程不一定是对的,想看的就是你平时的工作状态,遇到问题时的状态)

  • 有趣的问题

  • 一般到达这个问题,基本面试已经过了

  • 关键不是你答什么,重点是体现自己思维的活跃度

  • 不一定要给到完美答案



知识体系



建立自己的知识体系,确保自己体系的完整性。在学习的过程中可以补充这个体系,达到很高的完美性。而且是可以在自己的心里有这么一个完整的知识体系,而不只是在我们电脑放着就好。







Q & A



  • 职业规划,我不知道往哪里去?

  • 每个人目标不一样

  • 有人可能喜欢深挖一个技术,有些人就想做一个伟大的项目

  • 所以你要去哪里取决于你的人生目标是什么

  • 但是没有什么选择是错的,重点是你想做什么,就找到能做你想做的地方

  • 大厂会不会对 5-6 年工作经验有顾虑

  • 大厂对工作年龄不稳定

  • 但是如果你的工龄与你的能力不成对比,那肯定是有问题的

  • 在公司学不到东西,怎么办?

  • 学不到东西是你自己的问题

  • 要有 owner 意识,学不到东西就去找东西学

  • 我们不能把学不到东西推卸给公司或者环境

  • 我年龄大了,还有可能进入大厂?

  • 如果你觉得你的年龄无法进入 P6,那就继续提升到更高的级别

  • 总有一个级别是不在乎年龄的

  • 不论是年龄还是自己的学历,都不是我们应该关注的点

  • 更应该关注的是,我们有什么亮点可以让别人忽略我们的缺点

  • 所以要持续提升自己技术的认知,这些核心竞争力

  • 不要一直盯着自己不能改变的东西



我是三钻,一个在《技术银河》中等你们一起来终身漂泊学习。

点赞是力量,关注是认可,评论是关爱!下期再见 👋!



公众号《技术银河》回复"前端知识体系",可以获得这个系列文章的知识脑图







发布于: 2020 年 08 月 29 日阅读数: 108
用户头像

三钻

关注

微信公众号《技术银河》 2020.05.18 加入

起步于PHP,一入前端深似海,最后爱上了前端。Vue、React使用者。专于Web、移动端开发。特别关注产品和UI设计。专心、专注、专研,与同学们一起终身学习。

评论

发布
暂无评论
一篇文章搞懂前端学习方法与构建知识体系