繁体   English   中英

在IronPython中使用C#代码

[英]Using C# code in IronPython

我即将开始一个.NET项目:我们需要创建一个利用一些现有C#代码的创建程序,我希望使用IronPython。 (我是一位经验丰富的Python程序员,但有点像.NET新手)。

我的问题是:IronPython是否适合使用大多数C#代码,或者仅仅使用C#会更好吗? 如果IronPython很合适,是否有任何陷阱需要注意?

您需要将C#代码编译为可在IronPython中使用的程序集(DLL)。 一旦你这样做,IronPython可以像任何其他.NET程序集一样使用它。

这是IronPython的常见使用场景。

如果您出于无法控制的原因而处于Windows环境中,则使用IronPython有很多优势。

  1. 就像Python一样,只有.NET。 一旦你学会了如何引用程序集的异常元素,如何实例化对象,浏览对象等,这真的很好。

  2. 您不需要Visual Studio进行开发。 您只需要Notepad ++或任何体面的文本编辑器。 如果你真的必须有一个IDE,你可以使用SharpDevelop。 现在,如果你有VS2010,那么Ironpython的新插件很不错,未来版本应该会更好。

  3. 随着Ironpython 2.7和.NET 4.0的引入,以前版本的启动时间问题大多被否定了。

  4. 我发现WPF和XAML方法比创建GUI应用程序要容易得多。

  5. Ironpython脚本可以编译成exe文件以便于分发

也就是说,有缺点。

  1. 大多数软件包不直接安装到Ironpython中,强制您安装到CPython中,然后复制相关模块。

  2. 除非你使用Ironclad,否则利用pyd共享库的Python扩展不起作用,即使这样你也会遇到问题。

  3. 你放弃了跨平台,除非你的用户正在运行Mono,甚至你失去了一些像WPF这样的酷炫功能。

  4. 你有点落后于发展曲线。 Ironpython目前处于2.7 Beta 1,并且自10月份以来一直是微软发布的代码。 在此之前,MS之外没有人可以提交补丁。 社区领导层有望在2月份发布2.7 RTM,然后开始3.x开发。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM