[Ruby]:推荐的学习方法

时间:2009-10-30 20:41:48

标签: ruby-on-rails

我买了“Beginning Ruby: From Novice to Professional - by: Peter Cooper”。

从.NET背景来看,我想:

Ruby是C#,和 Rails是ASP.NET

比较时。如果我错了,请纠正我。我应该和Ruby一起学习Rails还是首先需要在Ruby中学到很多东西?我是否需要Rails的知识才能开发Web应用程序?如果没有Rails,仅使用Ruby可以做些什么呢?

8 个答案:

答案 0 :(得分:2)

  

我应该和Ruby一起学习Rails还是首先需要在Ruby中熟练掌握?

不,你可以同时学习。当然,您应该首先理解语言基础知识。但你之前不必好好地沾手

  

我是否需要Rails的知识才能开发Web应用程序?

不,Ruby还有其他webapp frameworks,但RoR最为着名。

  

如果没有Rails,仅使用Ruby可以做些什么?

你可以做任何其他编程语言的事情。

例如,请参阅Ruby站点上的"Success Stories"

答案 1 :(得分:1)

我个人觉得在完成项目后学习语言会更容易。这就是Rails的用武之地,通过提供Web开发框架,您可以轻松地创建任意数量的基于Web的业余爱好项目。

只是阅读并盲目地学习教程并不会让事情陷入困境。特别是当我建立了舒适的用其他语言做事的方式时。

Ruby是来自.NET套件中更正式语言的新鲜空气。如果您以前从未使用过任何动态语言(Python,Perl等),那么您就可以参加。最重要的学习工具是Interactive Ruby shell。如果你想玩代码只需要开始输入irb。书籍肯定有帮助,但只是在解释器上抛出语句和片段,可以帮助你理解幕后发生的事情比记忆方法调用和库API快得多。

关于Ruby的书籍查找_Why的Poignant Guide To Ruby。它与你见过的任何其他编程书不同,如果你来自.NET那些Ruby引入了许多非常外国概念的东西,这是合适的。如果你以前没有做任何关闭的事情,那么期望被街区挡住。

学习Rails和Ruby的唯一困难部分是确定代码的哪些部分是Ruby,以及什么是Rails辅助方法。坚持下去,你应该没事。

至于没有Rails的Ruby可以做什么?几乎任何事情。它是一种功能齐全的语言,适合许多任务。但我不相信具有硬实时要求的东西

我不是.NET的人。所以我不能评论Ruby和Rails之间关系的相似性以及c#和ASP.NET之间的关系。我可以告诉你关于Ruby和Rails的内容来自我看到Chad Fowler给出的一个话题。它被称为“Rails很无聊,Ruby就是玩具”。哪个是最简洁准确的描述。

Rails通过采用约定优于配置方法来完成Web应用程序中的大部分繁重工作。这意味着如果您以Rails期望的方式定义事物,那么完成最少的配置。 Rails是一个用Ruby编写的帮助程序框架,用于实现Web服务的MVC方法。

答案 2 :(得分:0)

Ruby是一种语言。 Rails是一个用Ruby编写的框架。您需要学习Rails的唯一原因是您希望基于它编写应用程序。

答案 3 :(得分:0)

你是对的比较,Ruby就像C#,ASP.NET MVC是Rails(很好)。 Rails是一个用Ruby编写的框架。

Rails似乎是在Ruby中开发Web应用程序的首选方式。还有其他框架,如Merb(与Rails合并),Sinatra和Ramaze。

即使不使用这些框架,您仍然可以构建您的Web应用程序,但这相当于使您自己的生活变得复杂,并且超出了本讨论的范围。

您可以并排学习Rails和ruby,当您更好地理解Ruby时,您可以深入研究使用ruby开发独立Web应用程序的更深层次的问题:)

答案 4 :(得分:0)

你的比喻是正确的。 Ruby是一种语言,Rails是一种框架。

如果你想做网络编程,你可以学习任何ruby web框架(Rails,Sinatra,Merb ......)。 Rails是最受欢迎的,而且它的学习速度非常快(喜欢配置概念的惯例,因为它可以帮助您更快地开始工作)。我不能推荐this预订足够的铁杆(并且它也有一个像样的红宝石底漆)。

Ruby本身就是一种很好的通用编程语言。

答案 5 :(得分:0)

这可能听起来很奇怪,但我学习Ruby是学习Rails的副作用。我之所以选择学习Rails是因为我想创建一个以数据库为中心的网站,并且看到Rails看起来比使用以Java为中心的堆栈(我的舒适区)要简单得多。我没有太多关注语言(Ruby),现在有一个相当不错的网站使用大量的Rails插件,它集成了Web服务,进行图像处理等.Rails是一个基于Ruby的框架,很明显我一直在学习Ruby,但是在进入之前我并不觉得我需要一个Ruby基础。也许这是因为Rails充满了DSL(特定于域的语言)自定义。有点倒退,但它对我有用:-)

答案 6 :(得分:0)

我强烈建议先学习Ruby。 Ruby是一个令人惊叹的工具,任何程序员都可以从中受益。在编写Rails之前,我编写了许多脚本,这些脚本在Ruby中节省了大量时间。在学习rails之前,我甚至写了一篇sinatra /续集商业智能webapp。如果你真的了解ruby,你将成为一名更好的铁轨程序员。

答案 7 :(得分:0)

来自.NET背景,你也可以考虑这个标题:

Rails for .NET Developers

Rails与ASP.NET不同,它就像新的ASP.NET MVC一样;或者更确切地说,相反。

在潜入Rails之前,我肯定会尝试掌握Ruby。 Rails以某种方式完成Ruby并且在冒险进入Rails之前了解Ruby将为您提供更好的整体基础。此外,Rails绝不是Ruby中Web开发的唯一选择。我建议您查看SinatraRamaze,尤其是Rack(其中包括所有重要的Ruby Web框架,包括Rails)。

就使用Ruby可以做什么而言,您可以使用任何脚本语言完成任何可以完成的任务。还有一些项目可以完成许多与C#相同的事情。 Ruby是一种通用语言,所以你可以用它做任何事情。它最出名的是因为Rails,但它不仅仅是Web开发的好处。