我能在Mac上用C#编程吗?

46

我想学习用于Unity的C#编程,而我的个人电脑是MacBook Air。我能在Mac上使用C#进行编程吗?


调查一下 Mono 是否适合你的需求,这是唯一的方法。 - Jonathan Camilleri
@GrantWinney Mono MDK还是Mono MRE? - firat
你甚至可以在你的Macbook上使用Unity(如果你的显卡足够强大)。 - molbdnilo
2
更新:使用Visual Studio for Mac进行Unity游戏开发。现在你不仅拥有C#,还可以在VS mac中运行所需的Unity! - ToolmakerSteve
6个回答

39
您的第一选择是于2017年发布的 Microsoft Visual Studio for Mac。如果您习惯使用VS ide,那我建议您下载此软件。

如果不是,您可以尝试使用MonoDevelop。您可以从这里下载。

MRE = Mono 运行时环境

MDK = Mono 开发工具包。

MDK = MRE + 额外的工具、库、.NET PCL(可移植类库)配置文件等。

如果您有一个需要运行 Mono 的应用程序,则只需安装 MRE 即可。

如果您正在进行开发、编写 C# 应用程序,有时仅安装 MRE 可能会遇到一些缺少的功能,例如没有 .NET PCL 配置文件。因此,如果您正在进行开发,我建议您安装 MDK。参考资料


4
Visual Studio for Mac 应该是你回答的首选。这绝对是最简单的实现方式。 - Kellen Stuart
1
@KolobCanyon 根据您的要求已更新。 - Izzy
更新:使用Visual Studio for Mac进行Unity游戏开发。现在你不仅拥有C#,还有OP想要的Unity,在VS Mac中运行! - ToolmakerSteve

25
是的,它就是。微软已经发布了Visual Studio Code 2017。它适用于Windows、Mac OS和Linux;它是一款非常好的开发文本编辑器。它与Windows上可用的完整版本类似,但也有一些缺点,它将允许您编写程序,并在Mac上运行和测试它们。 Microsoft Docs提供了一个快速入门教程和一个Hello World程序,可与Visual Studio Code一起使用。
不过,您需要安装一些依赖项,这可能听起来有点显然:
  1. Visual Studio Code
  2. .Net Core SDK
  3. C#扩展从市场。
我很幸运开始并且Visual Studio为我获取了所有的依赖项;所以我只需进入程序,打开集成终端(查看 > 集成终端)并运行命令dotnet new console,几秒钟后我就有了一个Hello World程序,用C#编写,在我的MacBook Pro上运行。

1
我只花了几分钟就把所有东西都搞定了!:) 谢谢! - Mar
很高兴能帮到你,@Mar。 - Sam
1
但我仍然不明白如何运行 Program.cs 文件? - Zeyad Shaban
对于持续的开发工作,Visual Studio for Mac(在另一个答案中提到)可能是最合适的选择。要快速测试代码片段,VS Code和CLI都可以很好地工作 - 谢谢!然而,上述说明似乎有点不完整。我按照这里的说明进行操作:https://learn.microsoft.com/en-us/dotnet/core/tutorials/with-visual-studio-code?pivots=dotnet-6-0 - Peter

10

现在有一个Mac版Visual Studio,提供免费社区版以及订阅的专业版和企业版。

JetBrains也为C#开发者提供了一个名为Rider的IDE,可在Mac上运行。如果您使用IntelliJ或他们的其他产品,您可能会喜欢它 - 对我来说,它比MonoDevelop或Visual Studio for Mac更好。这是一个商业产品,但JetBrains为学生和开源项目提供非常慷慨的许可条款(即免费)。他们还为创业公司提供大量折扣。


5
可以实现,但你将无法使用微软的工具,需要使用第三方程序,如Xamarin Studio(MonoDevelop)。 编辑 在回答此问题时,还没有一种可以在Mac上开发.net / C#程序的Microsoft工具/ IDE。现在有两个:
  1. Visual Studio Code
  2. Visual Studio for Mac

2
请注意,虽然每个人都提到了Mono和Xamarin,这是您应该绝对考虑的C#开发工具,但Unity可以直接在Mac上运行,特别是 Mac OSX 10.6+。
虽然两者都使用C#语言,但Unity所倡导的一些范例与标准的C#开发略有不同。我个人建议学习两种工具。 补充:请注意,微软最近宣布他们将跨平台移动标准的.NET实现,并在Mono团队的帮助下实现,因此虽然目前存在混乱的双重工具集,但未来会逐渐改变。

1

完全有可能,如果您使用Bootcamp安装Windows版本,则可以在启动时在两者之间切换,并通过在Windows分区上安装Visual Studio来拥有两者的全部功能。或者,您可以使用VMware,例如Virtual Box,在Mac OS中使用Windows。


13
与Mono或Unity相比,这完全是不必要的。 - David

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