前端依赖管理-前世今生及未来草稿
很多新入门的前端直接上手工程化,可能都不了解以前是怎么做开发的,简单讲下没有依赖管理前,前端是怎么做开发的
不会具体提及各个依赖管理方案和版本的区别(死知识),我们从自己使用的角度,来设计一套依赖管理方案。
最后再讲下其他语言的依赖管理是怎么做的
# 前言
每种技术语言在进行开发时,基本不可避免的会引用依赖
# 前端
回到前端
目前有几种方案, npm pnpm yarn
关注点: 代码如何加载依赖?
开发环境、生产环境所需的依赖不同
lock 的问题,解决 npm 多源的问题
忽略源
pnp 模式?yarn-pnp
# 依赖设计
# 从 0 开始设计一套依赖管理方案
忽略原先 node 的依赖设计, require 规则、node_modules 设计
XXXX 方案
这也正是 npm v1 的解决方案
目前解决了 xx 问题,但是我们也遇到了 y 问题
# 把包拍平可以么?
# 版本变化了?
# 总结
安装速度
版本问题
其他问题
- 幽灵依赖
# 截至目前,几个方案的功能支持程度
列个表
# 其他语言呢?
问题来了,每个语言的依赖管理都是怎么做的?对前端来说又有和借鉴?
# Rust
Cargo 的设计
# Java
maven 自动分析依赖
# go
# 拓展阅读
https://www.5axxw.com/wiki/content/siqqkp
https://zhuanlan.zhihu.com/p/83698275
https://zhuanlan.zhihu.com/p/137535779
https://www.v2ex.com/t/635217
https://segmentfault.com/a/1190000014938685
编辑 (opens new window)
上次更新: 2024/09/01, 23:56:56