python 的包管理是否追上了 node.js?

2016-03-02 09:16:43 +08:00
 slideclick
node.js 包管理的方便之处:
1.package.json 文件定义了全部依赖,可以一键安装全部依赖。
2.安装的依赖在项目本地目录下,不干扰别的项目,可以一键部署。

python 当前的包管理到这个水平了吗?做到第一条至少不难吧。
6407 次点击
所在节点    Python
50 条回复
sudoz
2016-03-02 09:24:54 +08:00
virualenv 加 pip
leeyiw
2016-03-02 09:25:26 +08:00
requirements.txt 和 virtualenv 结合,和 LZ 说的这两点达到的效果是一样的。
shunia
2016-03-02 09:27:36 +08:00
追?不应该是 npm 学习了诸多包管理生态(包括 easy_install,pip 等)吗?
slideclick
2016-03-02 09:28:42 +08:00
谢楼上各位。
hbkdsm
2016-03-02 09:29:32 +08:00
我怎么觉得第二条是缺点。。。一个项目都要下载几百兆的依赖
slideclick
2016-03-02 09:29:45 +08:00
@shunia node.js 是后来者,肯定吸取前人教训。 node.js 出生时包管理就这么方便, python 没少走弯路因此有历史包袱。
slideclick
2016-03-02 09:31:22 +08:00
@hbkdsm python 大君有次接受采访说,他最怕别人请他帮助解决打包的问题。第二天的方便之处是项目可以 COPY 就部署。这对 python 来说更为重要,因为 python 有 2 和 3 的分裂,因此隔离各个项目的库更加重要。
TangMonk
2016-03-02 09:33:20 +08:00
bundler 好啊
hahastudio
2016-03-02 09:36:53 +08:00
跑在前面的人是不是追上跑后面的人了?
你这是要套圈啊
bboyliu
2016-03-02 10:03:39 +08:00
@sudoz Would you please share me the answer about what is virualenv?
sjtlqy
2016-03-02 10:17:59 +08:00
O(∩_∩)O哈哈~, C++有包管理吗?  不还是照样牛逼
neoblackcap
2016-03-02 10:22:19 +08:00
npm 那水平就不要拿出来说先进了。遇到有需要编译的库,大家一样容易挂。还有 npm3 之后才开始了扁平化各类包。之前各个库自己管理自己的库,不断嵌套,在 windows 下还爆出了目录嵌套过长挂掉的情况,一个依赖下载几十兆。当时我真是大开眼界了,没想到包管理还可以这样做。真是简单粗暴啊!

现在的 npm 才说好点,说其他包管理追上它,那真是一个直钩钓鱼。
BOYPT
2016-03-02 10:33:25 +08:00
@sjtlqy C++有 CPM , C 有 clib 。
echo1937
2016-03-02 10:35:18 +08:00
一厨顶十黑 或者说 提问的艺术。
sudoz
2016-03-02 10:36:04 +08:00
@bboyliu why are you so zhuangbi? 手机输入非英文词组少了一个字母,你就看不懂了? fxxk
pinkman
2016-03-02 10:38:37 +08:00
别的不说我最喜欢的是 nrm, nrm 和 nrm use 让我装包再也不怕墙了
congeec
2016-03-02 11:01:48 +08:00
@BOYPT cpm 用起来咋样呀?去 Github 逛了圈, star 挺多
BOYPT
2016-03-02 11:06:34 +08:00
@congeec 不知道呀~我又不写 Cxx
只是想说包管理是趋势,应该最终大家都差不多。
neoblackcap
2016-03-02 11:14:36 +08:00
@congeec C/C++的包管理并没有什么用,若是真有用的话,那它就不应该叫 CPM ,而是 apt,yum 。你想想嘛, C/C++写那么多东西都是平台相关的,那么这个包管理的意义何在?还是一样的自己管理啊,而且 C/C++各种编译方法啊,有的库用 CMake ,有的是 GNU Make 。
C++换个编译器都会报错,不同的 STL 会不兼容。因此我觉得 C/C++这些语言的包管理意义真不大。
raptor
2016-03-02 11:22:39 +08:00
python 的 virtualenv+pip+requirements.txt 早就实现了,即使是 py2/3 分裂也一样可以解决,不知道楼主所说的有什么可追的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/260395

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX