就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
当前回答
阻力最小的路径:
Have a simple web project in mind. Go to rubyonrails.org and look at their "Blog in 15 minutes" screencast to get excited. Get a copy of O'Reilly Media's Learning Ruby Get a Mac or Linux box. (Fewer early Rails frustrations due to the fact that Rails is generally developed on these.) Get a copy of Agile Web Development with Rails. Get the version of Ruby and Rails described in that book. Run through that book's first section to get a feel for what it's like. Go to railscasts.com and view at the earliest videos for a closer look. Buy The Rails Way by Obie Fernandez to get a deeper understanding of Rails and what it's doing. Then upgrade to the newest production version of Rails, and view the latest railscasts.com videos.
其他回答
实际上,我有一篇关于如何开始使用rails的文章应该会有所帮助。你的问题中唯一没有涉及到的是操作系统。不管你信不信,Mac是这里的主导者!但是我很喜欢使用Ubuntu。有gedit插件让你非常接近TextMate -事实上,我更喜欢gedit。
如果你在一台windows机器上,可以使用linux,这绝对是一个更好的方法。Windows上的Rails有很多问题。
我的建议是开始——选择一个你通常用来学习mvc风格语言的小项目(例如,一些数据库,可能是一些基本的工作流),然后当你需要学习一个概念时,使用其中的一个(或两个!)
使用Rails进行敏捷Web开发 或 铁路之路
了解它是如何工作的,然后尝试一下。
敏捷Web开发的问题在于它已经过时了,并且场景运行的时间太长,以至于您真的不想只构建一次;Rails方式可能很难遵循,因为它是从参考到学习的跳跃,但如果它是好的,它比敏捷Web开发要好。
但总的来说,它们都是好书,都有利于学习,但它们都没有提供你想要遵循的“教育”路径。所以我读了前者的几章(足以获得基本概念并学习如何引导第一个应用程序——也有一些在线文章可以帮助这一点),然后就开始了,然后每隔几天我就会阅读一些新的东西,或者我用书来理解一些东西。
还有一点:这两本书都是Rails方面的书籍,而不是Ruby方面的书籍,如果您打算编写干净的代码,那么尽早花一天时间学习Ruby语法是值得的。Why's Guide to Ruby是一本很好的书,还有其他的。
我非常喜欢Jetbrains的《RubyMine》。它似乎是一个功能非常齐全的IDE,这是我在许多其他替代品中所错过的。也为了一个简单的环境,我喜欢文本编辑器。简单明了。
我写了一篇名为“Rails入门——我希望知道的事情”的文章,许多人认为这篇文章很有帮助。
基础知识:
使用Rails进行敏捷开发(书籍) 用于Windows上快速ruby/rails环境的InstantRails Aptana作为IDE 用于版本控制的Subversion
在线教程很不错,但很分散。为了更全面的理解,你可以花30美元买一本书。
找一个附近的Ruby用户小组并开始参加。我发现,这是一个很好的方法,可以结识许多对开发充满热情并愿意教书的人。