就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
当前回答
要学习Ruby,请阅读David Black的《The Well-Grounded Rubyist》。它非常清晰,文笔优美,组织有序。这是我读过的最好的技术书籍(大概十几本,因为我是一个相对较新的程序员)。
要学习Rails,请阅读“Head First Rails”。它们解释了所有神秘的部分是如何协同工作的。对这些愚蠢之处要有耐心,并按照自己的方式完成这些例子——它会有回报的。(此外,为了一致性,使用他们使用的任何版本的Rails。您可以稍后升级。)
这两本书都假设你对OOP编程和MVC架构几乎一无所知。如果你确实知道一点,不要略读,因为你可能会错误地假设事情。(例如,Ruby对象没有公共属性,只有getter和setter。但是你可以用一行自动创建多个getter /setter,比如attr_accessor:attr1,:attr2,:attr3。)
其他回答
实际上,我有一篇关于如何开始使用rails的文章应该会有所帮助。你的问题中唯一没有涉及到的是操作系统。不管你信不信,Mac是这里的主导者!但是我很喜欢使用Ubuntu。有gedit插件让你非常接近TextMate -事实上,我更喜欢gedit。
如果你在一台windows机器上,可以使用linux,这绝对是一个更好的方法。Windows上的Rails有很多问题。
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 on Windows is easy to get going with RailsInstaller, especially if you're using SQLite. If you want to use Ruby gems which need C extensions (e.g. RMagick), installation is difficult and unpredictable. PostgreSQL is a pain to install on Windows, and a pain to hook up to Rails. git doesn't work quite right on Windows. IDEs are bulky (Aptana). Notepad++ is good enough. Rails on Ubuntu is easy, and gems requiring C libraries just work. If your computer is powerful enough, use VirtualBox or VMWare Player, and use an Ubuntu Virtual Machine.
设置资源
本页面展示了如何在Ubuntu 11.10上安装Ruby/Rails/PostgreSQL。 如果你不喜欢RVM(我不喜欢),使用rbenv。RVM和rbenv是用于管理多个Ruby版本的工具,包括JRuby、Rubinius等。
用于开发/测试的实时部署
实时部署可以让你的朋友试用你的应用。它也可以让你更容易与需要回调到Rails服务器的web服务交互(如PayPal IPN或Twilio)。 Heroku.com是我最喜欢部署的地方。 localtunnel.com是一个很好的实用工具,可以将一个公开可见的URL指向本地Rails服务器。(我只在基于windows的Rails服务器上使用它)。
学习
试试网上的教程。 使用stackoverflow.com来提问。 使用“raise Exception, params”。to_s”在你的控制器中停止应用程序,打印出驱动你的控制器的所有参数。这让我对如何在Rails应用程序中来回传输数据有了最深刻的了解。 使用Rails控制台(“Rails控制台”)检查数据,并在将代码片段嵌入模型或控制器之前试用它们。
阻力最小的路径:
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的uber源都是http://www.rubyonrails.org/,如果站点上没有,你可能不需要它。
一个快速的食谱是Ruby on Rails: Up and Running,你可以从O'Rielly或搜索谷歌获得在线版本。他们带你了解Rails的约定,并使用Instant Rails,这是可以的。
更好的Rails书籍“敏捷Web开发与Rails”,这是Rails的汤到坚果。它会引导你下载和设置Rails、Gems等等。
如果你是一个Java“家伙”,想要一本过渡的书O' reilly有“Rails for Java Developers”http://oreilly.com/catalog/9780977616695/?CMP=AFC-ak_book&ATT=Rails+for+Java+Developers