Featured image of post 开发环境管理工具

开发环境管理工具

开发环境管理工具

 开发时,时常用到多开发环境,大家可能用到过类似minicondanvmgvm的工具,它们分别用于管理pythonnodejsgo的版本; 此外还有如maven的包管理工具;

 如果用到新的编程语言或包管理工具,安装对应的版本管理工具都比较麻烦,接下来介绍3款开发环境管理工具asdfmisevfox.

asdf、mise和vfox的对比

 三者都是用于管理开发环境的工具,都提供统一的命令行指令,可通过安装插件来拓展其功能.

  • asdf

 其中asdf诞生的时间更早,插件生态更加完善,它主要采用shell脚本开发,能非常好地适配于Linux及Mac,当谈到对Windows的支持时,有人向官方提出了类似的issue,但后续未提供支持Win的版本;

 当然,如果非要在Win平台使用asdf,可在wsl中安装使用,但考虑到wsl的速度远不如原生的exe格式程序,再加上shell本身为解释执行的,速度就更慢了; 因此,除了Win平台,其他平台都推荐使用asdf.

  • mise

 该工具原名rtx,由于原名很容易与Nvidia的显卡名混淆,后更名为mise,它采用rust编程语言开发;

 由于后端采用asdf,它也继承了asdf的缺点,同样对Win平台支持比较差.

  • vfox

vfox采用go编程语言开发,相对于另外2款工具,它最后编译成可执行文件,因此,速度快了很多,体积也较小,对Win平台也提供了原生支持.

 美中不足的是,可能这类工具的使用者大多采用Linux与Mac系统,vfox的贡献者较少,功能有待完善,但后续应该会超过前两者.

总结

 比较三者的特点,我更偏向于使用vfox管理开发环境,尽管如此,日常仍会使用语言专用的版本管理工具比如miniconda;

 即便学了很多编程语言,但日常大多人主要使用3门及一下的编程语言; 解决3款工具的安装及使用相对于解决1款工具bug的难度,前者花费的时间更少,不至于寻遍方法而只能提issue;

 此外,最近我在折腾自动化工具的过程中,发现环境的配置愈发简单,Dev Container对软件开发算是福音,或许未来任何平台的开发者都不必关注环境的安装配置,期待这一天的到来.


2024-06-19 更新

Licensed under CC BY-NC-SA 4.0
最后更新于 Jul 08, 2024 23:30 +0800