C# and Visual C#?

24

我想要澄清一下,我找不到明确的答案。C#是由微软制定的这种语言的一般规范,而Visual C#则是该语言的实现,同样由微软完成?

因此,如果我们说我们在C#中开发(例如在Visual Studio中),实际上我们是在开发Visual C#。

这是正确的吗?


非常类似于http://stackoverflow.com/questions/1643382/is-it-c-sharp-or-c-net,尽管我认为它并不完全相同。 - John Saunders
7个回答

25

没错,你已经基本明白了。我们大多数人都只称之为C#,因为它毕竟是Microsoft的东西,并且他们对这种语言的实现是大多数编码人员在Visual Studio中使用的。

一个没有使用Visual C#的C#编译器的例子是Mono编译器。使用该编译器的IDE是MonoDevelop。两者都不是Microsoft产品,但确实实现了C#编程语言(以及CLR)。


3
这里是一段来自 MSDN 支持这个答案的引用(重点在于:“Visual C# 是一个由微软实现的 C# 语言。”):“Visual Studio 提供了全功能代码编辑器、编译器、项目模板、设计师、代码向导、强大且易于使用的调试器以及其他工具,支持 Visual C#。” - user247702
但是这并没有说明Visual C#是什么,它只是说它受到Visual Studio的支持。它说Visual C#是微软对C#的实现(即.net Framework CSC.EXE编译器),与Visual Studio或任何开发工具的关系并不是非常紧密。 - PhillipH

1
我认为“Visual C#”不是一个特别常用的术语 - C# 是语言,所以我可能会说,“Visual C#”通常指使用 Visual Studio 套件进行C#开发。
不过,就像我之前说的,这个术语现在已经不再常用了(而且正如你指出的那样,它也是一个有点令人困惑的术语)。

0

但编译器并不是 Visual Studio 的一部分。 - PhillipH

0
整个“Visual C#”让我感到很不必要的烦恼(包括在一次面试中,因为我从未听说过“Visual C#”这个术语,而且显然面试官甚至不知道它是什么,只是想在资格方面打勾)。总之,“Visual C#”并不存在。它只是C#,我们应该提交请愿书以删除那个愚蠢的限定词。

0

Visual C# 是编译器(和集成开发环境)的名称。C# 是语言。这与 Borland C++ 和 C++ 相同(前者是特定的编译器)。或者 MySQL 和 SQL。


0

对于所有关于"Visual C#是在Visual Studio中开发的C#"的回答,我要指出,C#编译器(CSC.EXE)并不是Visual Studio的一部分,而是作为Microsoft .net Framework的一部分交付的——这完全独立于Microsoft Visual Studio系列开发工具。

如果它有任何意义(超越了最初的营销理念,即它将吸引Visual Basic开发人员,他们是Windows开发人员的多数派),我想它指的是由微软实现的.net Framework编译的C#。

无论Roslyn是否编译"Visual C#"或"C#"都只能猜测。


-1

C#是一种编程语言,类似于Java、Ruby和Python。
Visual C#指的是Microsoft Visual Studio/C#,它是用于编写C#的集成开发环境(IDE)。
你也可以在记事本中编写C#代码。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接