杂记 13
1 预备的学习路线
【先把web开发整体流程过一遍,再开始系统化学习,三件套加react,然后github加入社区提交pr玩开源,期间保持每天学习算法,项目能写简历了就开始背八股一个月,然后就可以投简历了,大概3个月能实现......】
自己写的,有点理想化但是也一定要多多实践才行,不能荒废青春!
-----------------------------------------
你的规划逻辑非常清晰!从 “建立全局认知” 到 “技术深耕”,再到 “实战落地 + 面试准备”,形成了完整的闭环,且 3 个月的时间周期对目标拆解(每日算法、阶段性学习)也具备可执行性。不过可以针对 “流程衔接”“优先级分配”“风险规避” 做一些细节优化,让计划更贴合前端学习的规律,避免走弯路。以下是调整后的规划框架,以及每个阶段的核心执行要点:
一、阶段 1:Web 开发整体流程梳理(3-5 天,快速建立全局认知)
核心目标:不用深入技术细节,重点搞懂 “一个网页 / 项目从 0 到上线的全链路”,避免后续学 “三件套” 时 “只知局部,不懂整体”。必做 3 件事:
- 画一张 “Web 开发流程图”(自己手写,加深记忆),包含关键节点:
plaintext
产品需求文档(PRD)→ UI设计(高保真原型)→ 前端开发(页面+交互)→ 后端开发(接口)→ 前后端联调 → 测试(功能/兼容性/性能)→ 部署(服务器/CDN)→ 上线后监控(bug修复/迭代)
- 找 1 个简单项目拆解流程:比如 “个人博客”,思考:
- 前端需要做什么?(页面:首页 / 文章页 / 登录页;交互:点击跳转 / 表单提交)
- 后端需要做什么?(接口:获取文章列表 / 提交评论;数据库:存储用户 / 文章数据)
- 如何上线?(前端部署到 Vercel/GitHub Pages,后端用云服务器如阿里云)
- 明确 “前端在流程中的角色”:比如和 UI 对接还原设计稿、和后端对接接口、负责解决浏览器兼容性问题、参与上线前的性能优化 —— 这会让你后续学 “三件套” 时更有目标感(比如学 CSS 是为了还原设计稿,学 AJAX 是为了对接接口)。
避坑提醒:此阶段不要陷入 “技术细节”(比如纠结 Webpack 配置),重点是 “建立链路认知”,3-5 天足够,超时会挤压后续核心学习时间。
二、阶段 2:核心技术栈学习(6-7 周,三件套 + React,每日 8-10h)
这是 3 个月计划的 “核心攻坚期”,需按 “基础优先、边学边练” 的原则推进,避免 “学完理论再写代码” 导致的 “学了就忘”。建议拆分 “三件套基础(3 周)→ React 核心(3 周)→ 技术整合(1 周)” 三个子阶段,每个阶段搭配 “迷你项目” 巩固。
子阶段 2.1:HTML/CSS/JS 三件套(3 周,打牢基础)
周次 | 学习内容(每日 4-5h) | 配套迷你项目(每日 2-3h,检验成果) |
---|---|---|
第 1 周 | HTML:语义化标签、表单、多媒体;CSS:盒模型、Flex/Grid 布局、响应式 | 做 1 个 “个人简历静态页”(用 HTML+CSS 实现,适配 PC / 移动端) |
第 2 周 | CSS:动画、选择器优先级、兼容性(Autoprefixer);JS:变量 / 函数、DOM/BOM 操作 | 做 1 个 “Todo List 静态交互页”(用 JS 实现添加 / 删除任务、本地存储) |
第 3 周 | JS 核心:ES6+(箭头函数 / Promise/async/await)、闭包、异步编程 | 做 1 个 “天气查询小工具”(用 JS 调用公开天气 API,实现异步数据请求与渲染) |
关键要求:
- 每学一个知识点,立刻写 “demo 代码”(比如学完 Promise,写一个 “异步加载图片” 的 demo);
- 遇到不懂的问题,优先查 MDN(而非零散博客),保证知识的准确性(比如 JS 的 this 指向,MDN 的解释最权威);
- 每日总结:用 “思维导图” 梳理当天学的知识点(比如 “JS 异步方案” 包含回调 / Promise/async/await,各自的优缺点),避免知识点混乱。
子阶段 2.2:React 核心(3 周,聚焦 “能用 + 理解基础原理”)
周次 | 学习内容(每日 4-5h) | 配套迷你项目(每日 2-3h) |
---|---|---|
第 4 周 | React 基础:组件(函数组件 / 类组件)、Props/State、事件处理 | 用 React 重构 “Todo List”(对比 JS 原生,感受组件化优势) |
第 5 周 | React 进阶:Hooks(useState/useEffect/useContext)、React Router | 做 1 个 “多页面博客前端”(实现首页 / 文章详情页路由跳转、用 Hooks 管理状态) |
第 6 周 | React 生态:Redux(或简化版 Redux Toolkit)、Axios 接口请求 | 做 1 个 “后台管理系统雏形”(实现用户列表展示、添加用户表单,用 Redux 管理全局状态) |
关键要求:
- 先学 “用”,再学 “原理”:比如先会用 useState 管理状态,再理解 “React 状态更新是异步的”,避免一开始陷入 “虚拟 DOM Diff 算法” 导致劝退;
- 项目中必须对接 “真实接口”:用 Mock.js(模拟后端接口)或公开 API(如 GitHub API),提前练 “前后端联调” 能力(对应阶段 1 梳理的 “前端角色”);
- 代码提交到 GitHub:每个项目分 “分支开发”(如 feature/todo-list),提交时写清晰的 commit 信息(如 “feat: 新增 Todo 删除功能”),培养开源协作习惯(为阶段 3 做准备)。
子阶段 2.3:技术整合(1 周,打通 “基础 + 框架”)
- 目标:把前面学的技术栈整合起来,做 1 个 “接近真实场景” 的小项目(比如 “电商商品列表页”),包含:
- HTML/CSS:用 Flex/Grid 实现商品布局,响应式适配移动端;
- React:用组件化拆分 “商品卡片”“筛选栏”“分页器”,用 Hooks 管理筛选条件状态;
- 工程化:用 Create React App 搭建项目(不用手动配 Webpack,降低难度),用 Axios 请求商品接口;
- 产出:项目需部署到 Vercel/GitHub Pages(生成可访问的在线链接),这会成为你简历中 “第一个可展示的项目”。
三、阶段 3:算法 + 开源协作(贯穿阶段 2 - 阶段 4,每日 1-2h,避免中断)
你的 “每日学算法” 规划非常正确(前端面试越来越重视算法),但需注意 “难度匹配” 和 “开源协作的时机”,避免 “为了算法放弃核心技术” 或 “开源提交无意义 PR”。
1. 算法学习:按 “难度梯度” 推进,聚焦 “前端高频算法题”
- 工具:LeetCode(优先刷 “简单 - 中等” 难度,标签选 “数组 / 字符串 / 链表 / 动态规划”);
- 阶段 2(技术学习期):每日 1 题,优先刷 “与前端相关” 的算法(如 “字符串匹配” 对应 URL 参数解析、“数组去重” 对应前端数据处理);
- 阶段 4(面试准备期):每日 2 题,补充 “前端面试高频题”(如 LeetCode 20. 有效的括号、LeetCode 141. 环形链表),并总结 “解题模板”(如双指针法、哈希表法);
- 避坑:不要刷 “超难算法题”(如硬通货类),前端面试更关注 “基础算法的应用能力”,比如 “如何用算法优化前端列表渲染效率”。
2. 开源协作:从 “小贡献” 开始,避免 “不敢提交”
- 时机:阶段 2 结束后(掌握 React 基础)再开始,前期先 “看开源项目”(比如 Ant Design、React 官方仓库),了解 “项目结构” 和 “PR 流程”;
- 第一步:找 “新手友好” 的开源项目(GitHub 标签搜 “good first issue”),比如:
- 修复文档错别字(适合入门,熟悉 PR 流程);
- 优化组件样式(比如给某开源 UI 组件添加响应式适配,用你学的 CSS 知识);
- 修复简单 bug(比如某 React 组件的点击事件不生效,用你学的 React 事件处理排查);
- 流程:Fork 项目→创建分支→修改代码→提交 PR→等待审核(过程中会收到维护者的反馈,这是提升能力的关键);
- 产出:至少成功合并 1 个 PR(即使是修复文档),这会成为你简历中 “开源经验” 的亮点,比 “只写个人项目” 更有说服力。
四、阶段 4:简历项目打磨 + 八股准备(4 周,目标 “能投简历”)
此阶段需聚焦 “面试导向”:把阶段 2-3 的项目打磨成 “简历级项目”,同时系统背八股(避免 “项目好但八股答不出” 的情况)。
1. 简历项目打磨(1-2 周)
- 目标:从阶段 2-3 的项目中选 2-3 个 “最能体现技术栈” 的项目(比如 “后台管理系统” 体现 React+Redux,“电商商品页” 体现响应式 + 接口联调),按 “STAR 法则” 优化项目描述:
- 场景(S):项目解决什么问题?(如 “为小型电商公司开发商品管理前端,替代传统 Excel 管理方式”);
- 任务(T):你负责什么?(如 “独立负责商品列表、筛选、分页功能的开发,对接后端 3 个核心接口”);
- 行动(A):用了什么技术?如何解决问题?(如 “用 React Router 实现路由懒加载,首屏加载时间从 3s 优化到 1.5s”);
- 结果(R):有什么量化成果?(如 “项目上线后,支持 5 名运营人员日常使用,商品管理效率提升 40%”);
- 补充:项目需包含 “在线链接”(部署地址)和 “GitHub 地址”(代码需整洁,有 README 说明 “项目功能 + 技术栈 + 启动方式”),HR 会优先看 “能直接访问的项目”。
2. 八股准备(2-3 周,按 “优先级” 背诵)
- 优先级排序:前端基础(HTML/CSS/JS)> React 框架 > 工程化 > 性能优化 > 后端基础(对应之前拆解的八股分类);
- 方法:
- 用 “思维导图” 整理每个模块的 “核心问题 + 答案框架”(比如 “闭包” 的答案框架:定义→用途→内存泄漏风险→解决办法);
- 结合项目记忆(比如背 “性能优化” 时,对应你项目中 “路由懒加载” 的实践,说 “我在电商项目中用了 React Router 的 lazy+Suspense 实现路由懒加载,优化了首屏加载”);
- 每日模拟面试:找同学互相提问,或用 “牛客网模拟面试” 功能,强迫自己 “脱稿回答”,避免 “背得熟但说不出”;
- 避坑:不要 “死记硬背答案”,而是 “理解后用自己的话复述”,面试时 HR 更青睐 “能结合实际项目解释” 的候选人。
五、阶段 5:简历投递 + 面试复盘(持续进行,每周 3-5 家)
- 投递策略:先投 “中小公司 / 实习岗”(积累面试经验),再投 “目标公司”;
- 复盘:每次面试后记录 “不会的问题”(比如 “没答出 React 的 fiber 架构”),当天补充学习,避免下次犯同样错误;
- 调整:如果某类问题频繁被问倒(比如工程化),及时回头补相关知识(比如再学 Webpack 优化)。
最终时间轴(3 个月 = 12 周)
阶段 | 时间(周) | 核心产出 |
---|---|---|
流程梳理 | 1(3-5 天) | Web 开发全链路流程图 |
技术学习 | 7(3 周三件套 + 3 周 React+1 周整合) | 3 个迷你项目 + 1 个整合项目(均部署上线) |
算法 + 开源 | 贯穿 12 周 | LeetCode 50-60 题,1 个成功合并的开源 PR |
简历 + 八股 | 4 | 2-3 个简历级项目,八股核心问题全覆盖 |
投递 + 复盘 | 持续(从第 10 周开始) | 面试经验总结,offer 收割 |
关键提醒:3 个月实现的核心前提
- 时间投入:每日有效学习时间需达到 8-10h(技术学习 6-8h + 算法 1-2h),避免 “三天打鱼两天晒网”;
- 聚焦核心:不要中途插入 “非必要技术”(如 TypeScript、Vue,3 个月内先吃透 React + 三件套,后续再补充);
- 实战优先:所有知识点都要 “落地到代码”,比如学完 Redux,立刻在项目中用,避免 “只看视频不写代码”。
按这个调整后的规划执行,3 个月内具备 “投递前端开发岗(实习 / 初级)” 的能力是完全可行的,重点是 “每个阶段都有明确的产出”(如项目、PR、算法题),避免 “学了一堆知识但没东西证明”。
2 未来时间点(寒假/春招)
【寒假如果有训练营或者开源比赛就参加,争取3月加入春招队伍,找一段实习】
你的规划非常贴合 “寒假黄金窗口期” 的利用逻辑 —— 通过训练营 / 开源比赛强化实战能力,3 月冲刺春招实习,既能弥补项目经验短板,又能抢占春招早期机会(春招实习岗往往 “先到先得”,3 月是投递黄金期)。下面针对 “寒假训练营 / 开源比赛选择”“春招实习准备节奏”“简历与面试适配” 三个核心环节,给出可落地的执行方案,帮你高效衔接目标:
一、寒假核心动作:训练营 / 开源比赛 —— 选 “高匹配、能出成果” 的,拒绝 “无效参与”
寒假时间短(通常 1-2 个月),参加活动的核心目标是 **“快速产出可写进简历的成果”**(如项目、奖项、开源贡献),而非 “泛泛学习”。需按 “优先级” 选择活动,避免同时参加多个导致精力分散。
1. 优先选 “前端专项训练营”—— 针对性补项目经验
这类训练营通常会带做 “接近真实场景的前端项目”(如后台管理系统、移动端 H5),且有导师指导,适合快速补齐 “简历项目” 短板。选择时重点关注 3 个维度:
- 匹配技术栈:优先选 “React + 工程化” 相关(如 “React 后台管理系统实战营”“前端工程化从 0 到 1 训练营”),与你之前规划的 “三件套 + React” 完全契合,避免参加 “Vue 专项”“全栈全链路” 等分散精力的训练营;
- 明确产出物:确认训练营结束后能拿到 “可部署的项目 + 完整代码 + 技术文档”(如 “基于 React 的电商管理系统,包含用户管理、商品 CRUD、数据可视化模块,部署地址 + GitHub 链接”),这是春招简历的核心素材;
- 机构 / 平台背书:优先选大厂(字节、阿里、腾讯)或知名技术社区(掘金、InfoQ)推出的训练营,一方面项目质量有保障,另一方面简历中可标注 “参与字节跳动前端实战训练营”,增加 HR 关注度(如 “2025 年 1 月 参与字节跳动前端实战训练营,独立负责电商管理系统商品模块开发”)。
避坑提醒:拒绝 “纯理论授课、无实战产出” 的训练营(如 “前端架构理论课”),寒假时间宝贵,必须 “学完就能用、用完就能写进简历”。
2. 次选 “轻量级开源比赛”—— 低成本积累开源经验
如果没有合适的前端训练营,可参加 “新手友好” 的开源比赛(通常 1-2 周可完成),重点积累 “开源贡献经历”(春招实习面试中,有开源 PR 记录会显著加分)。选择时关注:
- 难度匹配:优先选 “Good First Issue” 标签的比赛(如 “Ant Design 组件优化大赛”“Vue 生态工具 bug 修复赛”),任务通常是 “修复组件样式 bug”“完善文档”“开发简单功能模块”,无需深入底层原理;
- 时间可控:选择 “1 周内可完成” 的比赛(如 “3 天前端组件创意赛”),避免占用训练营 / 核心技术学习时间;
- 成果可量化:目标是 “至少提交 1 个被合并的 PR” 或 “获得比赛参与奖”,简历中可写 “2025 年 2 月 参与 Ant Design 开源组件优化比赛,提交 XX 组件样式兼容性修复 PR,被官方合并(PR 链接:xxx)”。
推荐比赛渠道:
- 大厂开源社区:字节跳动 ByteDance Open Source(https://opensource.bytedance.com/)、阿里开源(https://opensource.alibaba.com/),定期有针对学生的开源任务;
- 技术社区比赛:掘金 “前端创意开发大赛”、GitHub “ Hacktoberfest ”(虽非寒假专属,但可找历史任务练手)。
二、3 月春招实习冲刺:按 “时间节点” 拆分任务,避免 “手忙脚乱”
春招实习的关键是 “早准备、早投递”——3 月上旬各公司陆续开放岗位,3 月中下旬进入笔试高峰期,4 月开始面试,需按 “简历打磨→投递策略→笔面试准备” 三步推进,节奏如下:
1. 2 月底前:完成 “简历终极版”—— 针对实习岗 “突出潜力与实战”
春招实习岗更看重 “学习能力” 和 “基础实战能力”,简历需在之前的基础上做 “实习岗适配优化”:
- 项目部分:优先放 “训练营 / 开源比赛项目”(最新、最贴近实战),其次放个人项目。描述时突出 “独立负责的模块” 和 “技术难点解决”,比如:“项目:基于 React 的电商管理系统(字节前端训练营项目)职责:独立负责商品列表模块开发,用 React Hooks 管理筛选条件状态,通过 Axios 拦截器统一处理接口错误,解决 3 个 IE 浏览器兼容性问题;成果:模块上线后支持 100 + 商品数据展示,筛选响应速度 <300ms,获训练营 “优秀项目”。”
- 技能部分:新增 “训练营 / 开源比赛相关技能”,比如 “参与开源项目时熟练使用 Git 协作流程(Fork→PR→Code Review)”“在训练营中掌握 Webpack 代码分割配置”;
- 经历部分:单独加 “训练营 / 开源经历” 板块,标注时间、机构、成果,比如:“2025 年 1 月 - 2 月 参与字节跳动前端实战训练营 | 完成电商管理系统开发,获 “最佳技术实践” 奖;2025 年 2 月 参与 Ant Design 开源组件优化比赛 | 提交 XX 组件 PR,被官方合并(PR 链接:xxx)。”
2. 3 月 1 日 - 3 月 15 日:集中投递 ——“广撒网 + 精准定位” 结合
- 投递渠道:优先用 “内推”(效率最高,跳过简历初筛),其次是公司官网、BOSS 直聘、实习僧;
- 内推渠道:找学长学姐(目标公司在职员工)、训练营导师(大厂导师通常有内推名额)、开源项目维护者(如果你有 PR 记录,可私信维护者要内推);
- 投递策略:
- 按 “优先级” 分类投递:第一梯队(目标公司,如字节 Data AML、阿里前端)、第二梯队(中型互联网公司,如美团、快手)、第三梯队(独角兽公司,如小红书、BOSS 直聘),每天投递 5-8 家,避免 “只投大厂” 导致无面试机会;
- 针对岗位改简历:投递不同公司时,微调 “项目描述”(如投递字节 Data AML 实习岗,重点突出 “数据可视化” 相关经验,如 “在电商项目中用 ECharts 实现商品销量折线图”)。
3. 3 月 15 日 - 4 月 30 日:笔面试攻坚 ——“以战代练,及时复盘”
- 笔试准备:聚焦 “前端基础 + 算法”,每天刷 1-2 道前端笔试真题(来源:牛客网 “前端实习笔试真题”、LeetCode “前端高频题”),重点练 “JS 编程题”(如手写防抖节流、深拷贝)和 “算法题”(数组、字符串、链表,中等难度以内);
- 面试准备:
- 按 “八股模块” 每天复习 1 个板块(如周一 JS 基础、周二 React、周三工程化),结合 “训练营 / 项目经历” 准备案例(如被问 “React Hooks 原理”,可答 “在电商项目中用 useEffect 处理商品数据请求,理解其依赖数组的作用”);
- 每次面试后立刻复盘:记录 “不会的问题”(如 “没答出 React Fiber 架构”),当天补充学习;记录 “HR 关注的点”(如某公司频繁问 “工程化经验”,后续投递类似公司时,简历中重点突出工程化相关内容)。
三、关键保障:寒假 - 春招衔接期,避免 “顾此失彼”
- 核心技术不中断:参加训练营 / 比赛的同时,每天保留 1-2h 复习 “三件套 + React” 核心知识点(如每天早上背 30 分钟 JS 原型链,晚上写 1 个 React 组件 demo),避免 “学了新的忘了旧的”;
- 算法每日 1 题不中断:寒假期间可把算法时间调整为 “每日 30 分钟 - 1 小时”(优先刷 “前端高频算法题”),保持解题手感,避免春招笔试时 “算法生疏”;
- 提前准备 “自我介绍”:针对实习面试,准备 1 分钟和 3 分钟两个版本的自我介绍,重点突出 “技术栈匹配度” 和 “实战经历”,比如:“1 分钟版:面试官好,我是 XX 大学计算机专业在读,熟练掌握 React + 前端工程化,寒假参与了字节前端训练营,开发了电商管理系统;有 Ant Design 开源 PR 记录,算法每天刷题,希望应聘贵公司前端实习岗,谢谢。”
按这个节奏执行,寒假通过训练营 / 比赛补齐 “实战成果”,3 月春招集中发力投递与面试,完全有机会在 4-5 月拿到前端实习 offer。
核心是 “每一步都以‘产出简历素材、匹配春招需求’为目标”,避免无效努力,最大化利用寒假到春招的黄金时间。