1.webpack或者vue-cli3或者最新比较火热的vite,里面涉及的知识点和内在逻辑应该是比较复杂的;
2.node进行服务端开发,相对前端这个工种而言,也确实算很强大的工具了;
3.vue/react框架类源码,要实现这么好用的功能及兼容健壮性,这些作者做了一些什么工作,大家除了熟练使用api还有其他一些收获吗?
1.webpack或者vue-cli3或者最新比较火热的vite,里面涉及的知识点和内在逻辑应该是比较复杂的;
2.node进行服务端开发,相对前端这个工种而言,也确实算很强大的工具了;
3.vue/react框架类源码,要实现这么好用的功能及兼容健壮性,这些作者做了一些什么工作,大家除了熟练使用api还有其他一些收获吗?
3 回答2.7k 阅读✓ 已解决
4 回答1.1k 阅读✓ 已解决
2 回答1k 阅读
2 回答1k 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
2 回答892 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
软件行业的问题,大体上可以分为 为什么,怎么做,还有 怎么做得更好。然后用新技术升级所有老产品,再去寻找下一个痛点,重复前面的过程。
拿 webpack 举例子。为什么会有 webpack?早期的 JS 没有模块管理机制,很难复用代码; HTML、CSS、视频、声音、Flash 等静态资源非常难维护,每次开发和部署都要费老大劲。于是开发者开始从工程学的角度来解决这些问题:
webpack 出现后,因为很好的解决了 为什么,所以很快就取得应有的统治性地位。错过了 为什么 的开发者则努力去改进它,于是诞生了 二级脚手架,比如 @vue/cli。
了解了 为什么 再去考虑 怎么做,会更容易一些。也知道该看什么不该看什么。比如,你希望在加载某个类型的文件前做一些事情,那你就应该研究 loader 的写法,顺便可以阅读相关的一些 webpack 代码;如果你想给生成的 html 里加上原生 lazyloading,就应该用插件。
其它工具和仓库也是类似,一定要从需求出发,在理解了设计动机和基础设计之后,再去阅读特定的源码。如果有机会不读源码先动手(比如开发 loader、plugin),那么应该先开发。