IronRuby On Rails与Ruby On Rails(入门指南)

8

情境

我是一名有几年经验的C# / ASP.NET / MVC / Silverlight开发人员。我正在尝试启动我的Ruby On Rails学习。目前,我正在努力真正感受ROR。

我想了解标准

作为一个.NET开发人员,您倾向于使用标准IDE(Visual Studio)、几个标准数据库(SQL Server、Oracle等)以及特定的样式方式来设计您的Web 2.0应用程序(XHTML / CSS、Silverlight等)。

“那么在RUBY ON RAILS中的标准等同物是什么?(IDE、DB、呈现层标记)”

还有

我应该怎么做?我听说过IronRuby,从我读到的内容来看,它几乎可以转换成Rails可用的版本(IronRuby on Rails)。或者我直接开始使用Ruby On Rails!?

好处是什么?

使用IronRuby on Rails会给我带来什么好处,而不是使用Ruby On Rails?

非常感谢您的帮助。

6个回答

8

集成开发环境 (IDE)

大多数 RoR 开发者使用简单的文本编辑器 (如 MacOS 上的 Textmate,Windows 上的 Scite) - 主要是因为像 Java/C# 这样的语言设计的 IDE 的大多数功能 (重构、代码完成) 在动态语言 Ruby 上不能很容易地应用。然而 Netbeans 目前做得不错(另一方面,基于 Eclipse 的 Aptana Studio 也不错)。

数据库

由于 RoR 做了很多抽象,所以你使用哪个关系型数据库管理系统并不重要。 MySQLPostgres 可能是最好的选择,因为它们是最常用的(所以你可以期望持续的支持)。我不会根据性能争论来选择,而是根据它们提供的服务/支持来选择。

标记语言

标准的是 ERB(类似于 ASP 内联脚本)与 (X)HTML 结合使用。但是还有其他标记语言,比如 HAML,对于某些项目来说可能已经足够了。

优势

使用 IronRuby,您可以访问 .NET 框架并与其他 .NET 库进行交互。您还可以使用静态 C# 编写应用程序的某些部分。根据一些 基准测试,它可能比本机 Ruby 更快,但在我看来这并不是真正的优势。

目前,我建议您开始使用常规的 RubyOnRails - 如果您仍然希望切换,一旦 IronRoR 足够稳定,您可能能够切换。


E文本编辑器(e-texteditor.com)是Windows上类似于TextMate的编辑器,比scite更加优秀。 - Tilendor
我同意。我的背景和 Goober 很相似,但我认为使用标准的 Ruby on Rails 更好。因为我刚开始学习,而且由于 IronRuby 不够稳定而不得不处理问题会让学习过程更加痛苦! - Abe

3

集成开发环境(IDE):

在 Mac 上,标准的 IDE 是 Textmate

在 Windows 上,没有类似的标准,但我喜欢使用Netbeans

数据库:

MySQL 可能是与 Rails 最常用的关系型数据库管理系统 (RDBMS),因此得到了最多的支持,但我使用的是 Postgres,它也得到了很好的支持,并且在使用它时没有遇到任何问题。

标记语言:

内置的erb可以完美地工作,因为它是内置的,所以我认为这使它成为了一种标准。当然,如果你想的话,你也可以使用其他标记语言。

IronRuby vs Ruby

IronRuby 可能已经几乎实现了所有功能,但我敢打赌有很大的机会出现某些功能出错的情况,并且你可能会难以确定是你的代码出了问题,还是 IronRuby 出了问题。我会建议先使用纯粹的 Ruby 进行开发,然后再根据需要部署你的应用程序到 IronRuby 上。

有关常用插件的信息,请参见此问题:Rails Plugins


1

摘自:http://blogs.msdn.com/b/ericnel/archive/2010/03/25/5-steps-to-getting-started-with-ironruby.aspx

IronRuby是.NET的一个开源实现,它是Ruby编程语言的一个实现,严重依赖于Microsoft的动态语言运行时。该项目的首要目标是成为真正的Ruby实现,这意味着它可以运行现有的Ruby代码。查看this summary,了解在IronRuby中使用Ruby标准库和第三方库的概述。IronRuby与.NET紧密集成,因此可以从IronRuby中使用任何.NET类型,并且IronRuby运行时可以嵌入到任何.NET应用程序中。

本文稍后会继续讨论:

第二步-安装IronRuby友好的编辑器 您需要安装一个编辑器来使用IronRuby,因为Visual Studio内部没有对IronRuby提供设计支持。有许多编辑器可供选择,但我建议您选择以下之一:
  • SciTE( 下载MSI):这是一个轻量级文本编辑器,易于上手。 SciTE了解Ruby语法,并允许您在编辑器中轻松运行IronRuby代码,只需对配置文件进行小小的更改即可。

  • SharpDevelop 3.2( 下载MSI):这是一个开源的开发环境,适用于C#,VB,Boo和现在的IronRuby。 IronRuby支持是新的,但它包括集成调试。 您还可以查看SharpDevelop的主要站点。

注意:版本1.1.1(发布日期:2010年10月21日)起,Visual Studio 2010已经全面支持IronRuby(本地、rails框架等等)。


1

我强烈建议使用常规的Ruby On Rails - 您不想担心错误是由您的代码问题还是与您正在使用的平台不兼容引起的。

我的其余建议可能已经过时了-自从我很久没有使用RoR以来已经有几年了,但如果我完全不正确,我相信其他人会提到它。

现在可能有带有Ruby插件的IDE(也许我会寻找一些Eclipse插件),但它并不像Microsoft生态系统那样严格。您正在使用开源工具,这意味着喜欢不同事物的不同开发人员会找到适合他们的解决方案,因此可能没有“标准”作为这样。我非常习惯于使用带有ruby-mode插件的Emacs,这非常棒,但需要学习曲线。在这方面,我认真考虑了《程序员修炼之道》中的建议,认真学习使用文本编辑器,我很高兴我这样做了。

就数据库而言,您可能会使用MySQL,因为它似乎非常标准,但我相信您可以找到许多不同DB解决方案的ActiveRecord后端。如果您知道如何使用基本SQL,并且您对SQL Server和Oracle感到满意,那么您将能够很好地使用MySQL,毫无疑问。

关于表示层,它是通过Rails视图创建的。目标通常是构建符合标准的HTML并使用CSS进行样式设置。我从《使用Rails进行敏捷Web开发》这本书中学到了很多,作为整个平台工作方式的指南。我知道现在每个人都想免费从网上学习所有东西,但那本书以一种非常实用的方式将事物组合在一起,代表了极高的性价比。

1

1
关于Ruby或IronRuby - 使用IronRuby的好处仅在于其与.Net对象的无缝互操作性。
如果您计划从RoR应用程序中使用您的.Net代码,请使用IronRuby。否则,选择Ruby。
顺便说一下,如果您计划使用IIS,IronRuby on Rails也将更自然地运行在其之上。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接