我很好奇.NET将如何影响Python和Ruby应用程序。
用IronPython/IronRuby编写的应用程序是否对.NET环境如此特定,以至于它们实际上将成为特定于平台的?
如果他们不使用任何.NET功能,那么IronPython/IronRuby相对于非.NET同类产品有什么优势?
最佳答案
关于IronRuby,我无话可说,但是大多数python实现(例如IronPython,Jython和PyPy)都尽可能地忠实于CPython实现。 IronPython在这方面正迅速成为最好的之一,并且在Planet Python上有很多流量。
鼓励开发人员编写与他们在CPython中编写的代码不同的主要事情是,缺少像NumPy这样的C扩展模块(这在Jython和PyPy中也是一个问题)。
IronClad是一个有趣的项目,可让您从IronPython内调用C扩展模块。这最终意味着您可以使用所需的任何模块在CPython下开发代码,并且它将在IronPython上未经修改地运行。
http://www.resolversystems.com/documentation/index.php/Ironclad
因此,回答您的问题:
编写也可以在CPython上运行的IronPython应用程序应该足够容易,但是我可能会尝试另辟around径:也可以在IronPython上运行的CPython程序。这样,如果它不起作用,则很有可能是已知的错误,并且具有已知的解决方法。
IronPython等人现有的优点是,它们提供了该语言的替代实现,有时可用于发现CPython中的错误。如果出于某种原因(例如Silverlight)发现自己不适合在应用程序中分发CPython实现,那么它们还提供了部署Python应用程序的替代方法。
关于.net - .NET将如何影响Python和Ruby应用程序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/466897/