«

从头梳理一遍前端开发工程师需要掌握的知识点

codeyx 发布于 阅读:11 笔记


阶段划分

首先,我将按照自己对前端的理解,将前端分为三个等级:初级、中级、高级。
这三个阶段对应了不同的能力范围。

从头梳理知识点

  1. HTML
    基础标签:div、p、span、a、img、ul/ol/li、table、form、input/button/select/textarea
    HTML5 语义化:header、footer、nav、section、article、aside、main
    多媒体:video、audio、canvas 基础
    表单验证、name、placeholder、required、pattern
    SEO 基础:title、description、h1~h6 层级
    无障碍:alt、role、aria-label 简单了解
  2. CSS
    选择器:类、标签、ID、属性、伪类、伪元素、子选择器、相邻选择器
    盒模型:content、padding、border、margin、box-sizing
    布局:
    标准文档流
    float 浮动与清除浮动
    position:static/relative/absolute/fixed/sticky
    Flex 布局完整掌握(主轴、交叉轴、align-items、justify-content、flex-wrap 等)
    Grid 布局基础
    样式:
    字体、颜色、透明度、圆角、阴影、渐变
    过渡 transition、变换 transform、动画 animation
    响应式:
    媒体查询 @media
    移动端 viewport 设置
    rem、em、vw/vh 适配方案
    CSS 预处理:
    Sass/Scss 变量、嵌套、mixin、extend、import
  3. JavaScript 基础
    变量:var/let/const、作用域、块级作用域
    数据类型:
    基本类型:string、number、boolean、null、undefined、symbol
    引用类型:object、array、function
    运算符、条件、循环、函数
    数组常用方法:
    forEach、map、filter、reduce、find、some、every、slice、splice
    对象:遍历、深浅拷贝基础
    DOM 操作:
    获取元素、增删改查
    事件绑定、事件冒泡、事件捕获、事件委托
    BOM:window、location、history、navigator
    异步入门:setTimeout、setInterval、回调函数
  4. JavaScript 进阶
    执行上下文、作用域链、闭包
    this 指向、bind/call/apply
    原型与原型链、继承
    异步核心:
    Promise 完整使用
    async/await
    宏任务 / 微任务、事件循环初步
    模块化:
    CommonJS
    ES Module:import/export
    正则表达式常用场景:表单验证、手机号、邮箱
  5. 工程化基础
    npm /yarn/pnpm 命令
    package.json:dependencies、devDependencies、scripts
    模块化、按需引入
    ESLint、Prettier 基础配置
    Git:
    clone、commit、push、pull、branch、merge、stash
    解决简单冲突
  6. Vue 体系
    Vue 3 核心
    模板语法、指令:v-if/v-for/v-show/v-bind/v-on/v-model
    响应式原理基础
    setup 语法糖
    ref / reactive / computed / watch / watchEffect
    组件
    组件定义、引用、通信
    props / emit / expose
    插槽:默认插槽、具名插槽、作用域插槽
    Vue Router
    路由安装与配置
    路由模式:hash /history
    路由跳转:router-link /useRouter
    动态路由、嵌套路由、重定向、别名
    路由守卫:全局守卫、路由独享守卫、组件内守卫
    路由元信息 meta
    Pinia(状态管理)
    定义 store
    state、getters、actions
    数据持久化
  7. 网络请求
    HTTP 基础:请求方法、状态码、请求头、响应头
    Fetch / Axios
    封装请求工具:
    统一请求头
    拦截器
    错误统一处理
    loading、token 处理
    跨域:CORS、代理配置
  8. 项目能力
    还原设计稿
    表单、列表、分页、搜索、上传、导出
    本地存储:localStorage、sessionStorage、cookie
    简单组件封装:按钮、弹窗、表单组件
  9. TypeScript 系统掌握
    基础类型:string、number、boolean、any、unknown、never、void
    接口 interface、类型别名 type
    数组、对象、函数类型
    联合类型、交叉类型
    泛型、工具类型:Partial、Required、Readonly、Pick、Omit、Exclude、Extract
    类型守卫、类型断言
    模块与类型声明文件 .d.ts
  10. 框架深入
    Vue 源码级理解
    响应式系统原理
    diff 算法、虚拟 DOM
    编译原理简单理解
    组件设计模式:
    高阶组件
    组合式函数封装
    函数式组件
  11. 构建工具
    Vite 原理与配置
    代理
    路径别名
    插件配置
    环境变量
    Webpack 核心概念
    entry、output、loader、plugin
    打包优化:分包、压缩、图片处理
  12. 性能优化
    网络优化:
    浏览器缓存、强缓存 / 协商缓存
    防抖、节流
    图片优化:WebP、压缩、懒加载
    渲染优化:
    减少重排重绘
    虚拟列表
    代码优化:
    懒加载、异步组件
    包体积分析与优化
  13. Node.js 基础
    核心模块:fs、path、http、url、stream
    写简单接口服务
    中间件概念
    跨域、静态服务、文件上传
  14. 项目工程化
    规范:ESLint、Stylelint、Commitlint
    CI/CD 基础
    单元测试入门:Jest / Vitest
  15. Node.js 服务端开发
    Node 事件循环、异步 I/O
    内存管理、排查内存泄漏
    Express / Koa / Nest.js
    Nest.js 完整体系
    模块化 Module
    控制器 Controller
    服务 Provider/Service
    中间件 Middleware
    拦截器 Interceptor
    守卫 Guard
    管道 Pipe
    异常过滤器 ExceptionFilter
    配置、环境变量
    日志系统
    数据库
    MySQL / PostgreSQL
    MongoDB
    ORM:Prisma / TypeORM
    缓存:Redis 基础
    鉴权:JWT、Session、OAuth2
  16. BFF 层(前端必备后端能力)
    接口聚合、数据裁剪
    接口代理、透传
    签名、加密、防重放
    限流、降级、缓存
  17. 微前端 / 跨端
    微前端:qiankun、wujie、single-spa
    跨端:Taro / Uniapp
    Electron 桌面端
    WebAssembly 入门
  18. SSR / 现代化渲染
    Nuxt / Next.js
    SSR、SSG、ISR
    流式渲染
    服务端数据获取、缓存策略
  19. 前端架构设计
    项目架构分层
    请求封装、权限系统、路由系统
    状态管理设计
    埋点、监控、日志
    多环境、灰度、ABTest
  20. 前端基建
    组件库设计与开发
    CLI 工具开发
    Monorepo:pnpm workspace、turbo
    构建系统深度优化
  21. 源码级能力
    手写:
    Promise
    虚拟 DOM + diff
    响应式系统
    路由
    状态库
    阅读 Vue / React / Vite 源码
    理解编译器、渲染器、响应式核心
  22. 高难度业务场景
    富文本编辑器
    流程图、拓扑图
    大数据渲染、高性能长列表
    Canvas / WebGL / 可视化
    视频剪辑、画板、在线设计
  23. 极致性能
    全链路性能监控
    LCP、FCP、CLS 优化
    崩溃监控、异常回放
    大型项目重构
  24. 全栈能力
    后端架构思维
    微服务、RPC、网关
    数据库设计、分库分表
    服务部署、Docker、K8s 入门
  25. 技术领导力
    制定公司前端规范、架构标准
    技术选型、技术战略、Roadmap
    解决业界顶级难题
    主导重大架构升级与重构
  26. 技术产品化
    造平台:低代码、无代码、搭建系统
    造生态:组件库、工具链、插件市场
    用技术驱动业务增长
  27. 全栈 + 架构顶层视野
    能主导从客户端 → 前端 → BFF → 后端 → 数据库的全链路设计
    高并发、高可用、高安全系统
    跨端统一架构
  28. 行业影响力
    输出体系化文章、开源项目
    培养出一批高级 / 专家工程师
    在公司内部是技术最终决策人

至此,可完成前端毕业。

最后,我来表达一下我对AI时代“前端已死”话题的看法。
首先,我认为AI辅助编码确实能够代替前端开发工程师完成很多事情,加之很多公司并没有对技术的追求,当然也不需要。
在这种环境下我认为前端的招聘岗位会少很多很多,大部分公司招一些拥有基本Vue技术栈使用经验的Java后端(也可称初中级全栈?)就可以了。
但在大厂中,还是会存在高级前端开发工程师或者架构师的岗位,毕竟现阶段的AI还是没有真正的思考/架构能力。
作为大多数的普通人,我认为应该从初级开始,就要积极的去拥抱AI。比如去了解了解如何创建Skill、SDD开发的模式、如何规范AI生成的代码等等。
让AI去干那些麻烦的、重复性的工作,节省出来的时间我们可以继续学习,防止自己被AI替代。

请先 登录 再评论