ironRuby.docVIP

  • 5
  • 0
  • 约 6页
  • 2016-11-27 发布于河南
  • 举报
ironRuby

什么是IronRuby?开发者如何在Rails中使用它? 作者 Edd Morgan 译者 杨晨 发布于 2010年7月16日 领域 语言 开发 主题 .NET , 动态语言 , 语言 , Ruby 标签 Azure , DLR , SQLite , RubySpec , RubyGems , Mono , Windows Azure , IronRuby , CLR , Rails , IIS 分享 Share | Ruby分子的IronRuby IronRuby是微软的Ruby实现,它以.NET架构良好的互动性闻名于世。Iron这个名字实际上是“Implementation running on .NET”的首字母缩写。.NET的公共语言运行时和Mono(非官方的)均能够支持IronRuby。你可以不必弄清楚某些关于动态语言运行的问题(例如在CLR之上的Ruby),这就是DLR(动态语言运行时)将要帮你解决的。DLR是微软作为在CLR之上提供动态语言支持能力的一种技术手段。 相关厂商内容 ActionScript 3基本原理:函数 Pycon 2011 China12月3-4日上海 ActionScript 3基本原理:数值和数学 Flash Builder 4.5高级版试用版免费高速下载 ActionScript 3基本原理:软件包 相关赞助商 阿里云100万重金招募开发者。 作为微软对开源软件做出的承诺中的一部分,IronRuby和DLR可以在遵循微软公用许可证(Microsoft Public License)的前提下分别从GitHub和CodePlex中获得。从设计之初,IronRuby的目标就是成为Windows平台上Ruby实现的首选,而它自然也提供了良好的兼容性和优异的性能。在撰写本文的时候,IronRuby在RubySpec的通过率已经能够达到86%。反过来让我们看看MRI,它的通过率是98%。虽然通过率尚有不足,但是从测试上来看,IronRuby的性能要比MRI 1.8优异许多(高出四倍以上),这个测试结果是Antonia Cangiano运行他的Ruby测试套件之后给出的。 不仅仅拥有良好的兼容性和优异的性能,IronRuby的杀手锏是它和.NET标准库以及.NET程序集(assembly)之间良好的互动能力。仅仅只需一条‘require’语句,你就可以在Ruby代码中使用.NET架构和类。这个重要的功能就这样“自动”地在Ruby标准库的基础上被引入到IronRuby代码中。require后面可以跟任何.NET程序集的名字。让我们在Ruby中创建一个Windows Form,来看看Ruby和.NET是如何无缝集成的: require System.Windows.Forms System::Windows::Forms::Form.new.show 运行ir(IronRuby解释器),你将会在屏幕上看到一个标准的Windows Form!虽然只是一个空的Form,但是仅仅两行代码你又能期望多少呢?这里的代码之美就在于它需要比C#或者VB用更少的代码完成相同的事情。可以想象得到,你还能够程式化地向这个新的Form中加入一些控制逻辑: require System.Windows.Forms form = System::Windows::Forms::Form.new lbl = System::Windows::Forms::Label.new lbl.text = foo form.controls.add(lbl) form.show 比较静态语言和动态语言的代码是非常困难的事情,但是,我们可以先看看上面的代码在C#中应该是什么样子的: using System; using System.Windows.Forms; namespace MyWinFormsApplication { static class Program { static void Main() { Form form = new Form(); Label lbl = new Label(); lbl.Text = foo; form.Controls.Add(lbl); form.Show(); } } }

文档评论(0)

1亿VIP精品文档

相关文档