微软最近发布了Visual Studio代码,我对它的用法有点困惑,因为Visual Studio与它在功能上有很多相似之处。


Visual Studio代码是编辑器,而Visual Studio是IDE。

Visual Studio代码跨平台且速度快,而Visual Studio速度不快。

请注意,Visual Studio for Mac现在可用,但与Visual Studio(Windows)相比是不同的产品。它基于Xamarin Studio,缺少对一些旧的.NET项目类型的支持。它确实成功地构建了在Visual Studio 2017中创建的解决方案。Visual Studio for Mac的UI更加有限(例如,没有可自定义的工具栏)。因此,对于跨平台工作,Visual Studio代码可能仍然是首选。


Visual Studio(完整版)是一个“功能齐全”和“方便”的开发环境。

Visual Studio(免费“Express”版本-仅限2017年)是完整版本的以功能为中心的简化版本。以功能为中心意味着根据您的目标有不同的版本(Visual Studio Web Developer、Visual Studio C#等)。

Visual Studio(免费社区版-自2015年起)是完整版本的简化版本,并取代了2015年之前使用的单独的快速版本。

Visual Studio代码(VSCode)是一个跨平台(Linux、Mac OS、Windows)编辑器,可以根据您的需要使用插件进行扩展。

例如,如果要使用Visual Studio代码创建ASP.NET应用程序,则需要自己执行几个步骤来设置项目。每个操作系统都有单独的教程。


作为对前面答案的补充,两者之间的一个巨大区别是,Visual Studio代码具有所谓的“可移植”版本,不需要完全的管理权限即可在Windows上运行,并且可以放在可移动驱动器中以方便使用。


我将在下面提供Visual Studio和Visual Studio代码之间的详细区别。

如果你真的去看它,最明显的区别是.NET被分成了两部分:

.NET核心(Mac、Linux和Windows).NET Framework(仅限Windows)

所有本机用户界面技术(Windows Presentation Foundation、Windows窗体等)都是框架的一部分,而不是核心。

Visual Studio中的“Visual”(来自Visual Basic)在很大程度上与可视UI(拖放所见即所得)设计同义,因此从这个意义上讲,Visual Studio代码就是没有Visual!

第二个最明显的区别是Visual Studio倾向于围绕项目和解决方案。

Visual Studio代码:

它是一个轻量级的源代码编辑器,可用于查看、编辑、运行和调试应用程序的源代码。简单地说,它是没有Visual UI的Visual Studio,主要是一个超人的文本编辑器。它主要面向文件,而不是项目。它没有任何脚手架支撑。它是Sublime Text或Atom on Electron的竞争对手。它基于Electron框架,该框架用于使用web技术构建跨平台桌面应用程序。它不支持微软的版本控制系统;Team Foundation Server。它对Microsoft文件类型和类似功能的IntelliSense有限。它主要用于Mac上处理客户端技术(HTML、JavaScript和CSS)的开发人员。

Visual Studio:

顾名思义,它是一个IDE,包含项目开发所需的所有功能。如代码自动完成、调试器、数据库集成、服务器设置、配置等。它是一个完整的解决方案,主要由.NET相关开发人员使用。它包括从源代码控制到bug跟踪到部署工具等所有内容。它广泛用于.NET相关项目(尽管您可以将其用于其他项目)。社区版是免费的,但如果你想充分利用它,那它就不是免费的。Visual Studio的目标是成为世界上最好的IDE(集成开发环境),它提供全栈开发工具集,包括一个强大的代码完成组件IntelliSense,一个可以调试源代码和机器代码的调试器,ASP.NET开发的所有内容,以及SQL开发的一些内容。在最新版本的Visual Studio中,您可以在不离开IDE的情况下开发跨平台应用程序。Visual Studio占用的磁盘空间超过8 GB(根据您选择的组件)。简而言之,Visual Studio是一个终极的开发环境,而且非常沉重。

参考:https://www.quora.com/What-is-the-difference-between-Visual-Studio-and-Visual-Studio-Code


Visual Studio代码与命令提示符/终端集成,因此当需要在IDE和终端/命令提示符之间进行切换时(例如:连接到Linux),它将非常方便。


Visual Studio

集成电路设备除了免费版本,它是一个付费IDE。它在CPU上很重,在低端PC上落后。它主要用于Windows软件开发,包括DirectX程序、Windows API等。高级IntelliSense(有史以来最好的;Visual Studio代码的IntelliSense扩展位居第二)它具有内置调试器,易于配置项目设置(尽管开发人员倾向于不使用GUI)Microsoft支持(不仅仅是Visual Studio代码)主要用于C/C++(Windows)、.NET和C#项目以及SQL Server、数据库等。超大的下载量、空间利用率和随时间的推移而降低的速度。这是迫使我在较小的项目中使用Visual Studio代码的唯一缺点*包括生成依赖关系图的工具。重构工具非常支持VisualStudio。具有用于VB.NET、C++.NET和C#的VYSIWYG编辑器。(对于初次使用的用户来说,这很容易,而不是通过windows.h)

Visual Studio代码

免费开源文本编辑器具有IntelliSense(但如果未安装Visual Studio,则无法开箱即用,需要配置为指向MinGW等)下载大小和RAM要求更小。使用IntelliSense,它需要大约300 MB的RAM。(编辑:一些头文件倾向于将内存需求放大到7-8 GB,例如OpenGL和GLM库)它在低端PC上运行。(尤其是如果使用PowerShell而不是CMD,启动速度仍然很慢)较低的支持(开源,因此您可以自己修改)生成任务是特定于项目的。即使您想以普通配置构建它。主要用于web开发(这适用于所有自由文本编辑器)。他们倾向于展示对C/C++的JavaScript/HTML支持。Visual Studio在其他语言上展示了Visual Basic/C++。缺乏良好的扩展(尽管它仍然是新的)让您很难重新配置项目/工作区设置。我更喜欢GUI方式。跨平台有一个集成的终端(尽管PowerShell在启动时太慢)它最适合于较小的项目和测试代码(你知道,如果你感到无聊,想要打印“Hello,World!”,那么在Visual Studio加载时等待3-5分钟,然后在项目创建时再等待一两分钟,最后打印“Hello,World。


一个巨大的区别(对我来说)是Visual Studio代码只是一个监视器。使用Visual Studio,您可以使用多屏幕设置。


对我来说,Mac上的Visual Studio不支持Node.js(编辑和调试),而Visual Studio代码可以很好地做到这一点。


对于Unity3D用户。。。

VSCode比VS.文件在VSCode中从Unity立即打开。而VS非常慢。VS可以编译代码、构建应用程序等等,它是一个巨大的IDE,就像Unity本身或XCode一样。VSCode实际上“只是”一个功能齐全的文本编辑器。VSCode不是编译器:VSCode实际上“只是一个文本编辑器”。使用VSCode,您确实需要在项目中安装“Visual Studio代码”包。

当您首次下载并安装VSCode时,只需打开计算机上的任何C#文件。它将立即提示您安装所需的C#包。这是无害和容易的。不幸的是,VSCode通常只有一个窗口!打开另一扇窗是件麻烦事。在VS中,几乎不可能更改编辑器字体等。相比之下,VSCode具有FANTASTIC偏好-非常简单,从来都不是问题。据我所知,您在Unity中使用的VS中的每一个特性都存在于VSCode中。(所以,代码着色,跳转到定义,它理解/自动完成Unity中的每一件事情,它从Unity打开,双击Unity控制台中的某个东西,打开文件到该行,等等)如果您习惯于VS.,并且希望更改为VSCode。换编辑总是很难,他们很亲密,但很相似;你不会有很大的心痛。

简而言之,如果你是Unity3D的VS用户,

你要试试VSCode。。。

VSCode在各个方面都快了19万亿倍。这会让你大吃一惊。它似乎有所有的特点。基本上VS是世界上最大的IDE和应用程序构建系统:VSCode只是一个编辑器。(事实上,这正是Unity想要的,因为Unity本身就是IDE。)别忘了点击安装相关的Unity软件包。

如果我没有错的话,没有任何理由将VS与Unity一起使用。

Unity是一个IDE,所以你只需要一个文本编辑器,这就是VSCode。VSCode在速度和偏好方面都非常好。唯一可能的问题是多个窗口在VSCode中有点笨重!

VS中可怕的“双拷贝”问题。。。解决了的!

如果您将VS与Unity一起使用。有一个令人愤怒的问题,VS经常会尝试打开两次,那就是你最终会有两个或更多的VS副本在运行。从来没有人能够解决这个问题,或者弄清楚到底是什么原因导致的。幸运的是,VSCode从未出现过这个问题。

在Mac上安装VSCode-难以置信的简单。

没有安装程序等。在下载页面上,您下载了一个压缩的Mac应用程序。把它放在Applications文件夹中,你就完成了。

折叠!(Mac/Windows按键不同)

奇怪的是,折叠时没有菜单项/docu,但这里有钥匙:

https://stackoverflow.com/a/30077543/294884

在VSCode中设置颜色等-关键提示

特别是对于可能觉得颜色奇怪的Mac用户:

无价之宝#1:

https://stackoverflow.com/a/45640244/294884

无价之宝#2:

https://stackoverflow.com/a/63303503/294884

元文件。。。

要保持左侧文件的“Explorer”列表整洁,在Unity情况下:


开箱即用,VisualStudio可以编译、运行和调试程序。

开箱即用,VisualStudioCode除了打开和编辑文本文件外,几乎什么都不能做。它可以扩展为编译、运行和调试,但您需要安装其他软件。这是一家医院。

如果您正在寻找记事本的替代品,Visual Studio Code是您的不二人选。

如果您想开发和调试代码,而不需要在设置和安装方面花费数天时间,那么Visual Studio就是您的选择。


Visual Studio代码更多地是一种纯代码开发工具,而VS2019/VS2017等则更多地是用于开发程序的非编码方法。在VS中,您可以获得按钮工具和窗口工具栏工具以及所有这些花哨的东西。在VSC中,您必须从头开始编写整个代码。我建议VSC适用于刚开始学习代码的人,而VS适用于高级开发人员。


截至2021,我认为主要差异是:

Visual Studio代码是一个全新的代码库(基于Electron),比“旧的”Visual Studio代码库,它是开源的,并且是在“开放的”(基于github)上积极开发的Visual Studio更专注于“传统”的Windows GUI应用程序开发,并为此提供了电池,包括GUI的WYSIWYG编程风格(“可视化”)Visual Studio代码虽然本身很“裸”,但却吸引了许多社区开发人员来进行扩展,以完成最疯狂的事情。社区开发的扩展将其用作几乎任何编程语言的集成开发编辑器的基础(例如,我将其用于Julia)


简而言之,VSCode大力推广(Microsoft的)TypeScript编译器,并捆绑了对该语言的一流支持,这使得编辑器以web为中心,而Visual Studio主要用于Microsoft的原生C系列Windows/XBox。


随着VS代码每个月都在大量开发,一个新的答案是值得的。

我在Visual Studio做了十年ASP.net开发人员。当我在Stackoverflow调查中看到(https://insights.stackoverflow.com/survey/2021#section-最流行的技术集成开发环境),VS Code是第一个选择的IDE,我决定用它作为我的主要开发环境来尝试一下,一个月后的结果是:

我可以说,如果只有VS Code像VS一样具有可扩展和稳定的智能感知,我会将其作为我的首选IDE。Omnisharp(VS Code C#intellisense)对于小项目来说是令人满意的,但随着工作空间变大(例如,当您的工作空间中有多个项目时),不稳定性开始成为一个问题。

我仍然将VS代码用于小型网络项目,也用作DB客户端、powershell ISE、python等,因为它的轻便性、功能丰富性、可定制性以及拥有如此活跃的社区和开发团队。

显然,无论VS Code是获得VS级别的网络智能感知,还是VS获得更多改变游戏的功能,情况都会发生变化。