编程开发

关注公众号 jb51net

关闭
软件教程 > 编程开发 >

VS Code 和 VSCodium怎么选? vscode 和 vscodium之间的区别

脚本之家

很多人以为自己用的是开源软件,其实用的可能是一个“商业软件的马甲”。咱们今天就来聊聊 Visual Studio Code (VS Code) 和 VSCodium 之间那点不得不说的“真假美猴王”的故事。故事要从我开始搞渗透测试说起。

我是个典型的“开源洁癖”,我的笔记本上贴满了 Tux(Linux企鹅)和各种开源协议的贴纸。几年前,VS Code 刚火起来的时候,我也跟风装了一个。毕竟,轻量、插件多、微软拥抱开源的诚意之作,谁能不爱呢?Github 上那明晃晃的 MIT 协议,让我觉得无比安心。

直到有一天,我在调试服务的时候习惯性地抓包看了一下网络流量。

我惊讶地发现,哪怕我什么代码都没写,只是打开了 VS Code,编辑器就在后台默默地向几个域名发送数据。虽然数据量不大,但频率稳定。

“不对啊,”我眉头一皱,“我明明关掉了‘发送崩溃报告’,这发的是啥?"

我翻 VS Code 的用户协议(EULA),才在密密麻麻的英文里发现了一行小字:你下载的这个 VS Code 二进制包,并不是完全遵循 MIT 协议的,它是微软的产品,受微软软件许可条款约束,并且包含数据遥测(Telemetry)。

就在准备怒删 VS Code 回归 Vim 的时候,我在社区里发现了一个救星——VSCodium

那么,VSCodium 到底是什么?

如果不看图标(VS Code 是蓝色的,VSCodium 是绿色的),打开这两个软件,你会发现它们长得一模一样。菜单、快捷键、界面布局,完全是双胞胎。

为了让你秒懂,我给你打个比方:

Chrome 浏览器 和 Chromium 的关系,就是 VS Code 和 VSCodium 的关系。

简单说:VSCodium 就是去掉了微软遥测数据(Telemetry)和品牌标识的、纯净版 VS Code。

你可能会问:“大征哥,微软那么大的厂,它想加私货,社区这帮人怎么能删得掉呢?"

这就要讲到软件工程里的构建(Build)流程了。

微软在 GitHub 上托管的 vscode 仓库,代码确实是开源的。但是,在这个代码库里,有一个配置文件(product.json),它控制着软件编译后的行为。

当微软打包 VS Code 时,他们会注入特定的配置。这就像是在做汉堡时,最后淋上了特制的“微软酱料”。这个酱料里包含了:

VSCodium 项目的核心,其实是一套自动构建脚本(CI/CD Pipeline)。它的工作原理非常聪明:

通过这个过程,VSCodium 实现了代码层面的“物理断网”——由于编译时就没有包含追踪模块,无论你怎么设置,它都不可能向微软发送数据。

讲到这,你可能想立马卸载 VS Code 换成 VSCodium。但是,且慢。技术世界没有银弹,只有 Trade-off(权衡)。

VSCodium 虽然干净,但也带来了一些非常现实的痛点,这也是为什么很多开发者(包括我)在某些场景下依然选择忍受 VS Code 的原因。

微软的 Visual Studio Marketplace 是私有的。虽然你可以在 VS Code 里用,但根据使用条款,不仅限于 VS Code 官方版本使用

VSCodium 默认不能连接微软的插件市场,它连接的是 Open VSX Registry(一个开源的替代市场)。

这是最痛的一点。微软在这个游戏里留了一手。某些核心插件,微软并没有开源,而是作为闭源扩展发布的。

典型的例子:

当你兴致勃勃装了 VSCodium,却发现连不上远程服务器,或者写 Python 没有高亮提示时,那种挫败感是真实的。

为了让你更直观地选择,我做了一张对比表:

特性

VS Code (官方)

VSCodium

Theia (Eclipse)

核心代码

开源 (MIT)

开源 (MIT)

开源 (EPL)

最终产品协议专有 (Proprietary)开源 (MIT)

开源

遥测/追踪有 (默认开启)无 (彻底移除)

插件市场

微软官方市场 (全)

Open VSX (较全)

Open VSX

专有插件支持

支持 (Pylance, Remote等)

不支持

 (或需折腾)

不支持

适用人群

普通开发者、追求便利

隐私极客、涉密环境

需要定制IDE的企业

既然如此,我们该怎么选?

其实,VS Code 和 VSCodium 的并存,恰恰是开源精神的一种体现。

微软贡献了代码,换取了市场和数据,这是一种商业交换;而社区通过 VSCodium 拿回了控制权,这是一种自由意志。

技术的意义,不在于强迫你站队,而在于当你想要拒绝被凝视的时候,你依然拥有选择“不”的权利。

VSCodium 就是那个安静地躺在角落里,随时准备为你捍卫权利的“备用钥匙”。

总结

VS Code 和 VS Codium 的主要区别在于开发主体、隐私功能、开源属性及生态支持,具体如下

开发主体与归属

隐私与遥测功能

开源与专有组件

扩展性与生态支持

性能与轻量化

社区与支持

如何选择

类比总结:VS Code 类似“功能全面的付费软件”,VS Codium 类似“功能稍弱但免费的开源替代”,选择需权衡隐私、扩展需求与生态依赖。