玩转webpack:全方位掌握webpack核心技能和优化策略
课程背景近几年来,前端领域飞速发展,工作早已不再是切几张图,写几个页面那么简单,而是需要前端开发者更加专注业务需求。webpack,就是这么一款工具,将前端不断出现的新模块、新资源、新需求,进行自动化整合、梳理、输出,极大提高了我们的工作效率。
同时,webpack凭借着自身社区生态丰富,配置灵活和插件化扩展,官方更新迭代速度快等优点,已成为前端构建领域里最炙手可热的构建工具。在GitHub上,webpack也拥有着48.8k的star可是,不少前端人,对于webpack的使用和了解只停留在了20%的基础功能上。每天开发写npm run dev,该上线了按npm run build,执行个命令,webpack就帮你打包好了。
很多人根本不知道,这整个过程究竟发生了什么,导致之后出现问题,也无法对症下药,无从下手。
以下这些情景,你肯定或多或少都遇到过:
1,拿到一份用vue-cli和create-react-app生成的webpack配置,却不知道它们的含义;
2.想要深入了解webpack内部原理,但发现看不懂webpack源码,也不知该从何下手;
3,在做项目构建时,遇到速度或体积的问题时,发现自己拿不出一套完善的优化思路;
4,在社区的插件和loader不满足实际项目时,却无法自定义出一个定制化的插件和loader,来解决眼下的问题。
其实,掌握webpack是具有一定的学习曲线和成本的。如何理解webpack"一切皆为模块"的打包理念?如何快速掌握webpack的构建配置?如何让webpack成为升职加薪利器,而不是成为一名"webpack配置工程师"?
在腾讯,他曾主导团队将Fis3构建切换到webpack4,过程中涉及到多页面打包、SSR,PWA Prender等多种构建场景,和多实例构建、并行压缩、公共资源分包、tree shaking、动态Polyfil等构建策略。
这些经历,使他对webpack构建的打包速度和体积优化有了非常丰富的实战经验,同时也对前端工作流和团队开发规范实施有了深刻的认识。
工欲善其事,必先利其器。跟着学,保证你对webpack的掌握可以超过80%的前端人,进入一个全新的前端技术栈。
课程亮点
整个课程基于最新版webpack 4设计,遵循由浅入深的原则,将内容分为4个阶段。
基础篇:从最基础的知识讲起,由浅入深,教你掌握webpack的核心概念和开发必备技巧。
进阶篇:带你编写webpack构建配置的同时,轻松掌握构建速度和体积的优化策略。
原理篇:抽丝剥茧,通过webpack源码,让你了解webpack内部的运行原理的同时,也具备编写自定义loader和插件的能力。
实战篇:从一个Web商城项目出发,讲解webpack如何运用到实际的项目中,并且最大化地提升开发阶段和发布阶段的构建体验。
无论你是对webpack一无所知的初学者,还是经验丰富的前端工程师,都能够通过这个课程,提升对webpack的理解,建立属于你自己的webpack知识体系,并在工作中能够高效的使用webpack,完成各类前端项目的打包构建工作。
课程收获
1,快速掌握基础技能和进阶用法;
2.熟悉打包速度和体积优化策略
3.深入源代码了解打包构建原理;
4.编写健壮易维护的webpack配置。
课程目录
第一章:webpack与构建发展简史 (9讲)
01 | 课程介绍
02 | 内容综述
03 | 为什么需要构建工具
04 | 前端构建演变之路
05 | 为什么选择webpack
06 | 初识webpack
07 | 环境搭建:安装webpack
08 | webpack初体验:一个最简单的例子
09 | 通过npm script运行webpack
第二章:webpack基础用法 (12讲)
10 | webpack核心概念之entry
11 | webpack核心概念之output
12 | webpack核心概念之loaders
13 | webpack核心概念之plugins
14 | webpack核心概念之mode
15 | 解析ECMASCript 6和React JSX
16 | 解析CSS、Less和Sass
17 | 解析图片和字体
18 | webpack中的文件监听
19 | webpack中的热更新及原理分析
20 | 文件指纹策略:chunkhash、contenthash和hash
21 | HTML 、CSS和JavaScript代码压缩
第三章:webpack进阶用法 (16讲)
22 | 自动清理构建目录产物
23 | PostCSS插件autoprefixer自动补齐CSS3前缀
24 | 移动端CSS px自动转换成rem
25 | 静态资源内联
26 | 多页面应用打包通用方案
27 | 使用sourcemap
28 | 提取页面公共资源
29 | Tree Shaking的使用和原理分析
30 | Scope Hoisting使用和原理分析
31 | 代码分割和动态import
32 | 在webpack中使用ESLint
33 | webpack打包组件和基础库
34 | webpack实现SSR打包(上)
35 | webpack实现SSR打包(下)
36 | 优化构建时命令行的显示日志
37 | 构建异常和中断处理
第四章:编写可维护的webpack构建配置 (9讲)
38 | 构建配置包设计
39 | 功能模块设计和目录结构
40 | 使用ESLint规范构建脚本
41 | 冒烟测试介绍和实际运用
42 | 单元测试和测试覆盖率
43 | 持续集成和Travis CI
44 | 发布构建包到npm社区
45 | Git Commit规范和changelog生成
46 | 语义化版本(Semantic Versioning)规范格式
第五章:webpack构建速度和体积优化策略 (12讲)
47 | 初级分析:使用webpack内置的stats
48 | 速度分析:使用speed-measure-webpack-plugin
49 | 体积分析:使用webpack-bundle-analyzer
50 | 使用高版本的webpack和Node.js
51 | 多进程/多实例构建
52 | 多进程并行压缩代码
53 | 进一步分包:预编译资源模块
54 | 充分利用缓存提升二次构建速度
55 | 缩小构建目标
56 | 使用Tree Shaking擦除无用的JavaScript和CSS
57 | 使用webpack进行图片压缩
58 | 使用动态Polyfill服务
第六章:通过源代码掌握webpack打包原理 (9讲)
59 | webpack启动过程分析
60 | webpack-cli源码阅读
61 | Tapable插件架构与Hooks设计
62 | Tapable是如何和webpack进行关联起来的?
63 | webpack流程篇:准备阶段
64 | webpack流程篇:模块构建和chunk生成阶段
65 | webpack流程篇:文件生成
66 | 动手编写一个简易的webpack(上)
67 | 动手编写一个简易的webpack(下)
第七章:编写loader和插件 (7讲)
68 | loader的链式调用与执行顺序
69 | 使用loader-runner高效进行loader的调试
70 | 更复杂的loader的开发场
71 | 实战开发一个自动合成雪碧图的loader
72 | 插件基本结构介绍
73 | 更复杂的插件开发场景
74 | 实战开发一个压缩构建资源为zip包的插件
第八章:React全家桶和webpack开发商城项目 (10讲)
75 | 商城技术栈选型和整体架构
76 | 商城界面UI设计与模块拆分
77 | React全家桶环境搭建
78 | 数据库实体和表结构设计
79 | 登录注册模块开发
80 | 商品模块开发
81 | 订单模块开发
82 | 谈谈web商城的性能优化策略
83 | 功能开发总结
84 | 结束语
下载地址:
**** Hidden Message *****
不管你信不信,反正我是信了。 果断回帖,如果沉了就是我弄沉的很有成就感 不错,又占了一个沙发! 看了LZ的帖子,我只想说一句很好很强大! 膜拜神贴,后面的请保持队形~ 1111111111111 看了LZ的帖子,我只想说一句很好很强大! 啥也不说了,楼主就是给力! 不错,又占了一个沙发! 楼主,不论什么情况你一定要hold住!hold住就是胜利! 不错,又占了一个沙发! 1111111111111111111 玩转webpack:全方位掌握webpack核心技能和优化策略 1111111111111111111111 123123123奥术大师大大所大所多 感谢大佬 1111111111111111111111111 果断回帖,如果沉了就是我弄沉的很有成就感
页:
[1]