【问题标题】:Can you really use the Visual Studio 2008 IDE to code in Python?你真的可以使用 Visual Studio 2008 IDE 在 Python 中编写代码吗?
【发布时间】:2009-08-27 16:57:39
【问题描述】:

我有一个朋友正在尝试教他如何编程。他来自非常基本的 PHP 背景,并且出于某种原因是 ANTI C#,我猜是因为他的一些 PHP 圈子谴责任何来自 Microsoft 的东西。

无论如何 - 我已经告诉他在 VS2008 IDE 中使用 Ruby 或 Python 是可能的,因为我在某处读到这是可能的。

但我想知道。真的那么实用吗,你能在 VS2008 中用 Python 做所有可以用 C# 或 VB.net 做的事情吗?

我想没有开始辩论...我想知道您是否是使用 VS IDE 和 VB.net 或 C# 以外的语言的开发人员,那么请用您的经验回答。

如果您(像我一样)是 VB.net 或 C# 开发人员,请不要发布投机或主观的答案。这是一个严肃的问题,我不希望它因为主观而被关闭。 ...

非常感谢。

更新

到目前为止,我们已经确定 IronPython 是适合这项工作的工具。

现在它到底有多实用?

例如,Mono 在 Linux 中运行 C# 代码,但是...曾经尝试过使用它吗?根本不实用,需要进行大量代码重构,不支持 .net v3.5 等...

【问题讨论】:

    标签: python visual-studio ironpython


    【解决方案1】:

    如果您想将 Python 与 .NET 公共语言运行时一起使用,那么您需要以下之一:

    • Python.NET(对原生 Python 的扩展,增加了 .NET 支持)
    • IronPython(将 Python 重新实现为 .NET 语言)
    • Boo(类似 Python 的语言,可编译成与 C# 等效的 MSIL 代码)

    在 Visual Studio 中使用 Python 而不使用 CLR 对我来说似乎有点浪费。带有 PyDev 的 Eclipse 会是更好的选择。

    【讨论】:

    • 那么使用 IronPhython 有多实用。它是否支持您在 C# 或 asp.net v 3.5 等中拥有的每一种语言功能?
    • 你所说的“每一种语言功能”是什么意思? IronPython 支持在 Python 代码中使用 .NET 标准库中的所有类。它不会神奇地让 Python 理解 C# 特定的语法,比如 LINQ 或类似的东西。
    • 但归根结底,当被赋予构建程序的任务时(不是 hello world 示例),而是企业解决方案。您是说您同样能够使用 c# 或 Python.net(可以这么说)交付此解决方案吗?还是你知道 C# 肯定会工作,但 Python 的东西是实验性的,你会遇到问题?
    • 我从未在 IronPython 中做过企业级应用程序。如果我这样做,我可能会倾向于使用 Boo,尽管它确实有点实验性。你也可以只用 Python 做所有事情,完全避免使用 .NET 或 Visual Studio——我在这方面也取得了很好的成功(特别是如果你正在构建一个网络应用程序或任何你想在 Linux 上运行的东西) .我建议您打开另一个问题,解释您对这个项目的要求,并询问人们会推荐什么语言。
    【解决方案2】:

    我觉得奇怪的是,您的朋友反对 C#,但使用 Visual Studio 没问题。毕竟,有一个名为 SharpDevelop 的 .NET 开源开发环境。 C# 语言是一种标准。 .NET 是免费的(就像在啤酒中一样),并且该平台有一个名为 Mono 的开源实现。唯一“非免费”的东西是 Visual Studio(尽管有像啤酒一样免费的“Express”版本)。

    【讨论】:

    • 我试图让他相信,并非所有来自微软的东西都是“邪恶的”。
    【解决方案3】:

    这个在in this thread.之前已经讨论过了,我个人更喜欢eclipse和pyDev。

    【讨论】:

      【解决方案4】:

      我不知道你为什么想要 - 也许像 IronPython Studio 这样的东西会是一个快乐的媒介。但正如我所说,我不知道为什么你会想要使用 Visual Studio 进行 Python 开发,因为有 much better options available.

      始终为正确的工作选择正确的工具 - 仅仅因为您可以用无绳电钻的对接端钉钉子并不意味着您应该这样做。 Visual Studio 不是为 Python 开发而设计的,因此不是在其中进行开发的完美环境。请使用我链接的列表从该列表中选择更合适的编辑器。

      顺便说一句,我想知道为什么您的 PHP 朋友拒绝使用 C#(一种免费的行业标准化语言),但可以使用 Visual Studio(一种昂贵的闭源集成开发环境)。

      【讨论】:

      • 我认为问题是 - MS Kinda 声称 VS IDE 可以与 C# 和 VB.net 分离以用于任何语言。那么使用 Ruby 或 Python 进行我们在 VB.net 或 C# 中进行的相同类型的开发有多实用
      • 可以的。有一个强大的插件架构,可以用来开发你能想象到的任何东西。坚果那些插件需要大量的工作。尚未达到其他 ide 中的质量水平的工作。
      【解决方案5】:

      首先,关于 python(或各种实现)是否与 C# 一样“强大”似乎存在一个问题。我不太清楚强大的含义是什么,但根据我对这两种语言的经验,在 python 中编写一段给定的代码比在 C# 中更容易和更快。 C# 比 cpython 快(尽管如果需要速度,psyco python 模块非常值得一看)。

      我也反对你解雇 Mono。 Mono 在 Linux 上非常棒如果你从头开始为它编写一个应用程序。它并不是真的要成为 Windows 和 Linux 之间的兼容层(参见 Wine!),如果你这样对待它,你只会失望。

      在我看来,您采取了错误的方法。如果你想让他相信微软并非一切都是邪恶的,并且他坚持不学习 C#,让他学习 Python(或 Ruby,或 LUA 或其他)直到他能胜任,然后向他介绍 C# 并让他做出他自己的判断 - 我相当赞成开源,并且远不是一个狂热的微软支持者,但我尝试了 C#,发现我很喜欢它。

      我认为让他以次优方式使用 python 和 Visual Studio 会使他反对这两者——远非你想要的目标!

      【讨论】:

        【解决方案6】:

        前往 here 讨论有关 Visual Studio IronPython IDE 的内容。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-09-07
          • 2011-10-04
          • 1970-01-01
          • 1970-01-01
          • 2014-06-04
          • 2010-11-16
          • 1970-01-01
          • 2021-06-12
          相关资源
          最近更新 更多