18

如果切换到Monodevelop ,过去在Visual Studio中工作的开发人员必须放弃什么?这个假设的开发人员最常使用C#开发ASP.NET Web 应用程序

我知道 Monodevelop 具有基本的 Visual Studio 功能,例如语法突出显示和对 Visual Studio 解决方案的支持。哪些缺陷最能影响开发人员放弃 Visual Studio 的工作效率?

为了保持一致,请将您的答案限制在有关Visual Studio 2008Monodevelop 2.0的要点上。

4

5 回答 5

18

不能代表以前的版本,但我一直在 MacBook 上使用 MonoDevelop 3+ 进行商业项目,发现它比 Visual Studio 更愉快的体验。

它加载速度更快,编译速度更快,所有工具都更易于访问且布局更合理(如源代码控制)。

在我看来,UI 布局要好得多,你可以看出它是由软件的实际用户开发的,而不是实际不使用该软件的“UI 设计师”。

我还没有发现需要 3rd 方工具。在 Visual Studio 中,我使用 Resharper 进行代码格式化和其他小事,但通常觉得它很霸道。在 MonoDevelop 中,我发现它比 Resharper 更好地处理代码格式化,并且默认提供更多选项(例如,它可以像 Resharper 那样正确格式化流利的样式)。

仅就成本效益分析而言,MonoDevelop 胜过 Visual Studio。如果您需要进行 WPF 开发、基于 TFS 的开发、SharePoint 或其他以 MS 为中心的开发,那么它不是该工作的工具。如果您需要构建 ASP.NET MVC 应用程序、桌面应用程序、移动应用程序、后端应用程序,那么我建议您检查一下并节省 Visual Studio 许可证的费用。

就个人而言,我计划 100% 迁移到 MonoDevelop 并最终逐步淘汰 Visual Studio。我当然不会为了未来的发展而走 VS2012/RT 路线。我现在的客户摆脱了他们的 Win8 机器并决定使用 Win7。他们的客户要求我们在 Mac 上开发桌面客户端应用程序,因为他们希望完全淘汰 Windows。你自己决定这一切的去向。

于 2012-09-09T23:39:44.600 回答
10

我认为很多开发人员已经习惯了像 ReSharper 这样的第三方工具,而 MonoDevelop 则无法获得这些工具。

MonoDevelop 用户的数量与 Visual Studio 用户相比相形见绌,因此在线帮助(例如博客文章)要少得多。

于 2009-11-03T16:29:12.210 回答
4

当我在这篇文章中说“C# 编辑器”时,我指的是 Visual Studio C# 文本编辑器。抱歉,这只是打字习惯。:o

我会猜测 Visual Studio C# 文本编辑器的安装和完成比 MonoDevelop 更好。我之所以这么说,是因为我过去曾参与过一个项目,并且要正确地获取细节是难以置信的困难。以下是 Visual Studio C# 编辑器非常擅长的一些最难复制的项目:

  • IntelliSense 的速度和准确性,尽管我已经记录了如何处理其最佳功能之一。Visual Studio 2010 编辑器甚至更好,我还没有能够匹配它(而且似乎没有人关心,所以祝你好运匹配这个功能集)。IntelliSense 引擎在大规模处理部分完成(语法不正确)的代码方面也做得非常出色在方法中的语句中做这件事并不难,但是 C# 编辑器非常彻底。
  • 智能缩进很难做好,而 C# 编辑器做到了。甚至 Visual Studio 2010 Beta 1 也存在重大问题,但它在 Beta 2 中得到了改进,几乎达到了 2008 年的水平。
  • Visual Studio C# 编辑器中的代码格式非常好。这比上述两点要容易得多,所以我可以看到 MonoDevelop 包括它(不确定是否有)。与 Visual Studio 一样,主要困难在于匹配可定制性——它往往会导致一些粗略的代码(尽管这只是我的经验,其他人可能有一个漂亮的解决方案)。
于 2009-11-03T16:36:59.153 回答
2

看起来你以前从未见过 monodevelop。是的,它是很好且非常重要的软件。但此时它根本无法与VS相提并论。VS是更稳定、丰富、健壮的软件系统。昨天我在monodevelop编译了一个非常重要的项目,它只是崩溃了......

但它有 ASP.NET desinger 和 ASP.NET MVC 插件。可能会适合你

于 2009-11-03T16:01:18.897 回答
1

我尝试了 Monodevelop,发现它不是一个“哇”的体验,但这并不意味着它不是一个伟大的成就。

我习惯于停靠控件并能够轻松地将控件拖入/拖出容器。但是,如果我想在 GTK 中执行此操作,我必须删除所有控件并重新开始!因此,我无法使用 MonoDevelop 来提高工作效率。

一般来说,有人可以学习如何处理它。

只有知道如何在 Linux 中使用 C 和 C++(一般的 Linux 开发)编程的人才会发现它是一种“哇”的体验。对于 Windows 开发人员来说,这是一种不愉快的体验。

于 2012-03-14T07:02:04.423 回答