就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
当前回答
我从Java到Ruby再到。我发现这个教程很有用http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-java/。当谈到学习rails时,我不能说我使用了多少脚本\控制台。它允许您摆弄代码并学习如何做您不确定的事情。
我买过的唯一一本书是《使用Rails的敏捷Web开发》,第三版http://www.pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition。它非常有用,并且很好地概述了Rails框架。除此之外,我还经常看Railscasts(http://railscasts.com),这是一个很棒的屏幕筛选博客,涵盖了各种Rails主题。
我个人更喜欢使用Linux(因为git工作得更好)。但是,我也使用过windows和git,我不认为操作系统的选择会影响你的编程。
我在我的IDE中使用netbeans,偶尔也使用vim(带有rails插件)。我喜欢netbeans,但是当涉及到Rails支持时,我发现它仍然有点不靠谱(不是所有的特性都能一直工作)。
其他回答
《敏捷开发与Rails》一书是最好的教学工具。它有一个很好的类似于生活的应用程序,它通过章节向你介绍不同的概念。我使用了两次示例,之后我有了足够的知识来做自己的事情,并依赖于rails API文档(http://api.rubyonrails.org/)。
我目前正在学习RoR,这是我到目前为止所做的: 1. 阅读并遵循SitePoint的“简单Rails 2.2” 2. 阅读并跟随Oreilly的“Rails, Up and Running”第二版。
这两本书很有教育意义,采用了相同的方法,但风格不同;第二本书更激进一些,如果你有一些RoR知识,这是很好的。
如上所述,在阅读资源时要非常小心,有很多过时的视频和文章。
要学习Ruby,请阅读David Black的《The Well-Grounded Rubyist》。它非常清晰,文笔优美,组织有序。这是我读过的最好的技术书籍(大概十几本,因为我是一个相对较新的程序员)。
要学习Rails,请阅读“Head First Rails”。它们解释了所有神秘的部分是如何协同工作的。对这些愚蠢之处要有耐心,并按照自己的方式完成这些例子——它会有回报的。(此外,为了一致性,使用他们使用的任何版本的Rails。您可以稍后升级。)
这两本书都假设你对OOP编程和MVC架构几乎一无所知。如果你确实知道一点,不要略读,因为你可能会错误地假设事情。(例如,Ruby对象没有公共属性,只有getter和setter。但是你可以用一行自动创建多个getter /setter,比如attr_accessor:attr1,:attr2,:attr3。)
哦,我差点忘了。下面是更多的Ruby截屏资源:
SD Ruby——他们在网上有很多视频——我发现他们的Rest演讲SD9和SD10是最好的介绍之一。其他休息演讲假设你无所不知。这些都是非常介绍性和切题的。
Obie Fernandez谈InfoQ - Restful Rails。我也读过他的《Rails Way》一书,发现它内容丰富,但冗长而曲折,质量也有点不稳定。我从这本书中学到了很多东西,但我觉得为了读到好的部分而阅读重复的和不相关的东西有点惩罚人。
Netbeans是一个很好的手把手IDE,如果你有耐心等待它的工具提示,它可以教你很多语言技巧(即使在非常快的机器上,它也是一个非常慢的IDE),你可以使用IDE以图形化的方式浏览可用的生成器和类似的东西。获得最新的版本,甚至还内置了Rspec测试。
波特是一个预先构建的基础应用程序,其中已经插入了许多标准插件。如果你下载并试用它,弄清楚它是如何设置的,你就已经在创建自己的全功能应用程序的半路上了。
我同意srboisvert的观点。不要在Windows上操作。您可以将Ubuntu (Linux版本)添加到Windows并进行双启动。这需要一些工作,但这比违背常理,试图让所有事情都在寡妇身上工作要容易得多。
Ubuntu, Heroku和Git工作得很出色。要知道学习曲线一开始是陡峭的。从Guru.com或Elance上雇佣一些人来帮助你。
此外,在Mac上运行Textmate是首选的解决方案,所以如果你正在考虑购买一台Mac或有机会使用一台Mac,这是最好的选择。我认为你不需要太多的计算能力……
最后,我最喜欢的书是《Agile Web Development for Rails》。谷歌搜索并不能很好地工作,因为大多数信息来自旧版本的Rails,已经被弃用或不能工作。