为什么 WebStorm 这么好用还会有人去用 VSCode?

VSCode最香的是不管我写什么都能给我带来统一的使用体验,不需要切换不同的IDE。今天我写Python,明天我写C,后天我写Java,大后天我写Vue,甚至写个VHDL,写各种配置文件,脚本,等等等等,我都能一样的工具。

我有种感觉。打开jetbrains的时候感觉压力好大。

打开vscode的时候压力会小一些。

jetbrains用15分钟后有一种沉浸感。

vscode用15分钟后没感觉。

如果是元气满满的一天,我会喜欢jetbrains,想去征服,想去创造。

如果已经很累了我倾向于用vscode,轻轻的来,轻轻的走。

拜年的时候闲得无聊也来参与下圣战。想到啥说啥。VSCode 免费,不需要花钱,不怕用破解有后门。我不是鼓励用破解,但是能省一笔是一笔,刚入行的程序员月薪三千还是挺多的。VSCode 是开源的,有问题可以自己提 pr 修,也可以提 issue 让 VSCode 团队处理。VSCode 团队是我接触的所有开源项目中对 issue 响应速度最快,最友好的。也不会因为3 天没有 reproduce 就关掉你的 issue(没错,我就是在说 vite 这么干太霸道了)。有几个老哥在 twitter 上也很活跃,可以直接和他们反馈 bug。insiders 版一天一更,也许你今天提的 bug 明天就在 insider 版更新了。我对 webstorm 不熟,那我想问,webstorm 多久一更新? 反馈 bug 响应是否迅速? 是否有比较活跃的社区让大家共同交流碰到的 bug? 我能否随时查看开发进度?VSCode 的开发计划是透明的,我可以在 github 上清楚的查到当月的开发安排和进度,有哪些 featurea 已经进入到 backlog。你可以参与到 VSCode 的开发讨论中去,每一个 feature 都有对应的 issue,所有的讨论都在 issue 中进行,你可以随意 @ vscode 的项目经理和其它开发,给他们反馈 bug,提出建议由于是开源的,因此涌现很多基于 vscode 二次开发的 ide,听说过的有华为,阿里,这些 ide 的用户熟悉了二次开发的 ide,由于习惯问题肯定也更青睐 VSCode。hbuilder,微信开发工具其实也和 VSCode 很像。VSCode 的界面更简洁,可定制化程度更高,也更灵活,灵活指可以直接修改 settings.json 修改设置。印象中以前 idea 是用 xml 配置的? VSCode 则是采用我觉得世界上最好的配置文件格式 jsonc。fleet 长的有多像 vscode,webstorm 就多尴尬……vscode 默认的快捷键设计更科学vscode 的高颜值主题更多没写过 webstorm 插件,但我知道 VSCode 插件的是很容易开发和发布的,你很容易通过编写插件去实现没有内置的功能。这种一切都掌控在自己手里的感觉相信 vim 用户更有实感。你很容易去发现插件的 bug,通过插件的 output 面板,直接打开 vscode 的 devtools 看 console,每一个 vscode 的插件主页都有仓库地址,可以直接和作者反馈。以前的 WebStorm 给我的感觉就像是个黑盒。VSCode 的插件是基于命令式的,这使用调用 VSCode 自身或者插件的功能变得非常容易,因此也可以给每个能力定义快捷键。还方便了其它插件通过执行命令来复用已有能力。由于 VSCode 是使用 web 技术开发的,因此很容易在其中集成 WebView(包括 editor 和 panel view),很多前端开源项目作者很容易把已有的 web 项目移植为 vscode 插件VSCode 项目本身就是一个非常优秀的前端项目,作为前端开发者很容易对他产生好感。通过使用 VSCode 也可以学到很多东西。比如我在公司开发一个 electron 客户端的时候就借鉴了 VSCode 的插件系统我没有重度使用过 vscode remote 功能,但是貌似网络上的风评一直都是优于 intellijVSCode 团队一直在 notebook 上投入很多人力,前几个版本刚实现沙盒化,最新版本在把源码迁移到 ESM。沙盒化是为了更容易迁移到浏览器,notebook 则是为了更好的将网页上的那套东西尤其是 github 的那套东西能够在本地客户端更好的渲染,支持更多的能力。我不敢保证未来开发都是在浏览器端编写代码,但这几年浏览器端运行的原生应用,数据库,操作系统越来越多。相信未来会有相当一部分开发会使用浏览器进行代码开发VSCode 的可访问性一直都很重视,以前分享会上听同事说是因为 VSCode 团队里面就有残障人士? 不知道 webstorm 怎么样据我所知 TS 之父用的就是 VSCode,TS 也是微软的,TS 的编辑器能力貌似也是拿 VSCode 做的测试。我没去细看 VSCode 的插件是不是 lsp 的,但可以肯定的是,如果 TS 插件的编辑器能力有 bug,一定是 VSCode 先修复。VSCode 启动速度更快VSCode 就像你兄弟,WebStorm 像个雇佣兵

针对某些回答:我觉得回答 VSCode 支持多语言貌似有点答不对题,因为题目问的是 vscode vs webstorm 不是 vscode vs intellij。当然不排除题主可能改标题了vsc 不是 vs,它俩差别大了去了,能把 vsc 写成 vs 真的显得特别不专业,回答也没有说服力某答主说:我打个工天天盘编辑器干嘛。要我说 VSCode 都盘不明白,你能干啥? 懒就是懒,VSCode 又不是像 vim 那样上手成本高。

WebStorm 至今还不支持全局配置保存时运行 ESLint,我还是得给每个新项目手动配一下……

另外前端生态本身新技术像娱乐圈一样隔两天就要整个大新闻,这些新技术全都是优先考虑支持 VSCode 的,而 Webstorm 要等 Jetbrains 在下一个版本官方适配。Astro 一开始就是这样。还有一堆 VSCode 的神秘小众插件我至今找不到 Webstorm 的替代插件,我又没闲到吃饱了撑的自己去写插件……

我一点也不反感 Jetbrains IDE 的开箱即用特色,而且实话实说它们在打开大型项目时比 VSCode 还流畅很多,优化索引之类做得都挺不错的。一般写 Java 的话项目稍微大点我也还是会用 IDEA 而不是 VSCode. 但前端这个生态就是个娱乐圈生态,整个生态需要一个永远最新永远迭代的编程环境,很遗憾的生态最早选择了 VSCode 插件,所以 VSCode 成为了这唯一一个“永远最新”的编程环境。

另外,得益于 TS 的自家优势,VSCode 整体上在 TS 支持上也比 Webstorm 好上一些,这个“一些”可能大部分人一辈子都碰不到,但对我真的很重要……

还有一个我感到 Jetbrains 系和 VSCode 的一个不同,那就是 VSCode 很“薄”。 它薄在配置文件也只是 JSON,Settings 里的 UI 不过是对 JSON 的简单包装,稍复杂些就要去改 JSON. 但这并不令我反感,只让我感到简单和轻松。我明确知道我所有的配置都仅仅是包含在那一个 JSON 里,用 Profile 的话是两个,仅此而已,我复制一下给别人就能直接拿来用。而 Jetbrains IDE 则将设置掩藏在层层叠叠的层级中,Project 上的配置和全局默认配置还不通用,这样避免用户直接改配置文件的努力是值得称赞的,但给我的感觉却是我不得不陷入层层嵌套的配置地狱,去寻找那唯一一个我想要修改的地方……某种意义上,这和 Linux 直接修改文件的配置思路与 Windows 采用图形化界面的系统设置思路是相似的,并没有真的孰优孰劣,只是不同的选择,而不同人群又有不同的倾向。只是很遗憾的,我倾向于更简单的方式。

WebStorm和VSCode都是非常优秀的代码编辑器,各有其自身的优势。

WebStorm的优点:

更强大的代码自动补全功能,智能提示更准确,提高编程效率。更好的代码调试功能,支持断点调试、watch等,Debug体验更佳。更丰富的代码重构功能,进行方法/变量重命名等重构更方便。更完善的GIT集成,内置完整的Git控制面板,Git操作更流畅 。更完备的前端支持,对JavaScript、TypeScript、Vue等前端框架支持更好。更强大的IDE性能,项目大了也不会卡顿。跨平台支持好,Windows、Mac、Linux均可用。

VSCode的优点:

轻量且启动快速,对系统资源占用少。简洁干净的界面,自定义和扩展性强。丰富的插件市场,插件种类多,扩展性强。更强大的社区支持度,使用者众多。对前端框架的支持也在不断改进中。免费开源,不需要付费。跨平台支持好。

WebStorm适合对IDE要求较高、追求coding体验的开发者。VSCode以其轻量、高度定制性而吸引许多用户。无论选择哪一个,都能助力开发工作。应根据个人工作习惯进行选择。