就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。

你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?

是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?

说真的,任何建议/技巧/咆哮都很棒。


当前回答

我以前在windows上用Java和c#编程。

我赞同这些来源:

IDE:尝试Apatana RadRails 3预览:http://www.radrails.org/3。它是最接近Visual Studio的东西。我偶尔会使用它,但仍然喜欢Textmate的轻盈感。

OS: Mac OS从Ruby社区得到了最多的爱。其他的都被当作私生子对待。

书:

实用程序员指南(十字镐书) 使用Rails进行敏捷Web开发

视频:

Peepcode (pay)是一种快速掌握概念的好方法 Railscasts(免费)是一个很好的方法,每周获取新的宝石和概念增量 Railscasts(专业版)也是一种以相当低的价格获取概念的好方法。

其他回答

哦,我差点忘了。下面是更多的Ruby截屏资源:

SD Ruby——他们在网上有很多视频——我发现他们的Rest演讲SD9和SD10是最好的介绍之一。其他休息演讲假设你无所不知。这些都是非常介绍性和切题的。

Obie Fernandez谈InfoQ - Restful Rails。我也读过他的《Rails Way》一书,发现它内容丰富,但冗长而曲折,质量也有点不稳定。我从这本书中学到了很多东西,但我觉得为了读到好的部分而阅读重复的和不相关的东西有点惩罚人。

Netbeans是一个很好的手把手IDE,如果你有耐心等待它的工具提示,它可以教你很多语言技巧(即使在非常快的机器上,它也是一个非常慢的IDE),你可以使用IDE以图形化的方式浏览可用的生成器和类似的东西。获得最新的版本,甚至还内置了Rspec测试。

波特是一个预先构建的基础应用程序,其中已经插入了许多标准插件。如果你下载并试用它,弄清楚它是如何设置的,你就已经在创建自己的全功能应用程序的半路上了。

I have got up to speed with Ruby on Rails fairly quickly via this free online course which is currently being offered by UC Berkeley - Software as a Service - Engineering Long Lasting Software with instruction by Armando Fox and David Patterson. I can't speak highly enough of this course... it really was a privilege to learn Rails from these guys. And there is an active community on the course forums if you run into difficulty along the way. The first offering of the online course has now finished (as of 25 March, 2012) - the next time it will be run will be sometime in September of 2012.

It assumes you are a fairly competent developer and gets you started on ruby in the second week, then Rails runs from the third week up to the end of the course (five weeks). Your assignments are marked by an auto-grader. You get provided with a pre-built Ubuntu VM image with everything you need for development pre-installed on it (e.g. Ruby, Rails, Rake, Gems, RSPec, Cucumber, etc). All you have to do is start up the VM inside the (free) VirtualBox software which runs on MacOSX, Windows and Linux.

这门课有一本推荐教材。在这里……但是你可以在网上看讲座和视频。

我现在正在学习Rails,如果你正在使用Windows(假设使用c#开发),如果投资Mac不是一个选择,我强烈建议你学习Linux。

如果你不想在你的硬盘上为Ubuntu创建一个单独的分区,我建议你看看Wubi,一个Ubuntu的Windows安装程序。Rails在Ubuntu上的体验远没有在Windows上那么令人头疼,我认为它类似于OSX开发环境,只是没有那么多的应用程序支持。我目前正在使用一个alpha文本编辑器Redcar,它允许你有一些textmate的功能,流行的OSX编辑器。

我读过的关于Rails的好书是Cloves Carneiro Jr和Rida Al Barazi写的《Beginning Rails 3》。还有Noel Rappin的《Rails测试处方》,关于用测试驱动的方法进行开发。

我最喜欢的是Ryan Bates的Railscasts,它让我从业余爱好者变成了行家。他通常在每周一左右发布一个关于Rails精华的视频,或者最近的Sass、SCSS、Coffeescript以及与Rails 3.1相关的技术。

我觉得对于任何初学者来说,必读的是why's(尖锐的)ruby指南。不幸的是,当我开始接触Ruby时,_why消失了,但他的内容仍然分散在各种来源。它有奇特的幽默,到最后你会很好地了解Ruby的语法。

这里有一些很棒的建议!

我将列出的一些资源已经被提到,一些我认为没有。我肯定还不是一个专业选手,我只是在过去的几个月里一直在学习,我的进步速度很快。这是帮助我的顺序:

Why's poignant guide to ruby: excellent introduction to the Ruby language by the infamous _why. Agile web development with rails book: great book with some good in-depth follow alongs Rails tutorial by Michael Hartl (railstutotrial.org): this has been my favorite resource. Hartl's style of walking you through demo apps and explaining everything just made things click for me. Rails for Zombies - ran through this twice, great for reinforcing the basics. Railscasts - I started following this along at first, but they were not helpful until now that I am just really starting to grasp Rails. I would leave these for the end after you have got your feet wet. Think Vitamin's rails tutorials were also pretty good. I followed along these screen casts at first, to feel out the language and then did them again towards the end. The "Learning Rails" podcast, although outdated (Rails 2) was also a good starting resource. I listened to this while driving/working out.

我希望这对你有帮助!我远不是专业人士,但我一头扎进去,尽可能多地从各种资源中汲取。我上面提到的方法是最有帮助的!

哦,现在真正对我有帮助的是制定个人项目和设置特定的任务。跟着做很好,但是当你在没有向导的情况下潜入时,你才能真正学到东西!

只有+1敏捷Web开发与Rails(尽管确保您获得最新版本)- http://pragprog.com/

我在Mac上开发,这有时是有益的——它是Rails开发人员非常流行的平台,所以你看到的许多博客文章都是面向Mac的。不过Linux也很棒;)

最后——我和公司一点关系都没有——当你有东西想要直播时,heroku是一个不错的选择。找到一个便宜的rails主机并不容易,所以这是一个很好的起点。不过,还有很多其他优秀的主持人!Heroku确实需要git来进行版本控制(尽管您可以在subversion之上使用它)。

祝你好运!