就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
就目前而言,我是一名Java和c#开发人员。我对Ruby on Rails看得越多,我就越想学习它。
你发现学习RoR的最佳途径是什么?在Windows上开发会更容易吗,还是应该在Linux上运行虚拟机?
是否有一种IDE可以与Visual Studio的健壮性相匹配?有什么程序可以给我们一个很好的开销吗?有什么好书吗?
说真的,任何建议/技巧/咆哮都很棒。
IDE: NetBeans Book: Agile Web Development With Rails Installation: Instant Rails
在我的职业生涯中,我已经从c#转向了Ruby和RoR,在我的个人生活中,我发现linux对开发来说更有吸引力一些。特别是现在我已经开始使用git,在linux上的实现更加清晰。
目前我正在双启动,接近于全职运行Ubuntu。我在开发环境中使用gedit和各种插件。从2010年底开始,我开始推动使用Vim进行开发,甚至在OS X上使用Textmate。
大量的Rails开发人员正在使用mac,这实际上让我开始思考这个方向。
虽然我还没有尝试过,但是Ruby in Steel为您提供了一个Visual Studio世界中的Ruby IDE,如果您感兴趣的话,IronRuby是Ruby的. net版本。
就书籍而言,Pragmatic Programmers的《Programming Ruby》(也被称为Pickaxe)是学习Ruby的实际教材。我咬紧牙关,买了那本书和《Rails敏捷Web开发》;这两本书都很棒。
窥码截屏和PDF书籍也很适合入门;每次9美元的截屏费用很难出错。我其实买了五瓶装的。
还可以查看以下内容:
官方铁路指南 Railscasts railsapi.com或Ruby on Rails - APIdock 红宝石秀 面向僵尸的Rails Softies on Rails -面向。net开发者的Ruby on Rails Rails播客 Rails最佳实践
在过去的一个月里,我已经浏览了Rails和Rails Envy播客的积压,它们提供了许多主题的精彩见解,甚至是关于一般的软件开发。
任何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
我从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支持时,我发现它仍然有点不靠谱(不是所有的特性都能一直工作)。
有一个叫Softies on Rails的网站,是由几个前程序员编写的。NET开发人员可能会有一些用处。他们有一本书叫《Rails for .NET开发者》,将在接下来的几个月出版……
我开始在一个Windows盒子上使用Eclipse的RadRails插件和Dreamweaver的RubyWeaver扩展(回到1。x天的Rails)。从那以后,我换了一台运行TextMate的Mac电脑,再也没有想过回去。
至于书籍,我从《Ruby之路》和《Rails敏捷Web开发》开始。在您开始Rails开发时,构建Ruby背景无疑会有所帮助。
一定要看瑞恩·贝茨的Railscast系列。
对于像我这样从PHP转到RoR的人来说,这看起来是一个很好的资源
http://railsforphp.com/还有一本书《Rails for PHP Developers》
请注意,rails世界充斥着大量令人沮丧的过时且不一致的文档和示例。它可能是发展最快、最流行的开发社区之一。当你学到一些东西的时候,它已经改变了。甚至书中所讨论的rails版本也不一致。通过博客记录!足够的说。
我目前在windows上做RoR。我的建议是尽量避开窗户。很多东西都不起作用,rails社区真的真的不关心你。迁移到Git真的把我搞得一团糟,因为它在windows上不能很好地工作。很多宝石会因此而失败(Heroku看起来像一个很酷的工具-对我来说太糟糕了,它不能处理window的Git设置)。卡皮斯特拉诺出局了。这种情况继续下去,令人恼火。
Plus, in the back of your mind, you always wonder when something doesn't work "Is it a rails/windows problem?" I am not sure this is solved by using linux because linux brings its own hassles like constantly having to upgrade all those different dependencies, etc...If that's the kind of thing you enjoy it might be an okay choice for you. Those days of enjoying system fiddling are behind me and I just want to get on with doing my work. I am planning on installing ubuntu on a home machine just so i can get familiar with things like capistrano so maybe my opinion will change.
我强烈建议,如果你打算做rails开发,你应该认真考虑购买一台Mac。如果你珍惜你的时间和理智,它几乎会立即得到回报。你花了10个小时调试windows/linux安装问题,这取决于你如何评估你的时间,你花的钱和Mac电脑的钱一样多。
与它所取代的东西相比,Rails是一种乐趣,但它也有点痛苦,因为它的支持者跳过了许多无聊但重要的东西,如文档、兼容性问题和社区建设。它比Django等其他框架强大得多,但有时我在看Django的文档和社区时,会像一个有狂野性感女友的男人看着他朋友平凡但理智稳定的妻子一样叹息。但是后来rails添加了一个特性,我惊叹道:“哦,太棒了!”
在我看来,Rails的截图比Peepcode的截图要好。RubyPlus也有截图,注意,它们有点粗糙。BuildingWebApps有一个免费的在线课程,课程进行到一半就开始截屏。
我发现Obie Fernandez写的《The Rails Way》非常棒,当使用Rails进行敏捷Web开发还不够深入的时候,我经常会参考它。Obie Fernandez也有一个不错的博客。
哦,我差点忘了。下面是更多的Ruby截屏资源:
SD Ruby——他们在网上有很多视频——我发现他们的Rest演讲SD9和SD10是最好的介绍之一。其他休息演讲假设你无所不知。这些都是非常介绍性和切题的。
Obie Fernandez谈InfoQ - Restful Rails。我也读过他的《Rails Way》一书,发现它内容丰富,但冗长而曲折,质量也有点不稳定。我从这本书中学到了很多东西,但我觉得为了读到好的部分而阅读重复的和不相关的东西有点惩罚人。
Netbeans是一个很好的手把手IDE,如果你有耐心等待它的工具提示,它可以教你很多语言技巧(即使在非常快的机器上,它也是一个非常慢的IDE),你可以使用IDE以图形化的方式浏览可用的生成器和类似的东西。获得最新的版本,甚至还内置了Rspec测试。
波特是一个预先构建的基础应用程序,其中已经插入了许多标准插件。如果你下载并试用它,弄清楚它是如何设置的,你就已经在创建自己的全功能应用程序的半路上了。
我的建议是开始——选择一个你通常用来学习mvc风格语言的小项目(例如,一些数据库,可能是一些基本的工作流),然后当你需要学习一个概念时,使用其中的一个(或两个!)
使用Rails进行敏捷Web开发 或 铁路之路
了解它是如何工作的,然后尝试一下。
敏捷Web开发的问题在于它已经过时了,并且场景运行的时间太长,以至于您真的不想只构建一次;Rails方式可能很难遵循,因为它是从参考到学习的跳跃,但如果它是好的,它比敏捷Web开发要好。
但总的来说,它们都是好书,都有利于学习,但它们都没有提供你想要遵循的“教育”路径。所以我读了前者的几章(足以获得基本概念并学习如何引导第一个应用程序——也有一些在线文章可以帮助这一点),然后就开始了,然后每隔几天我就会阅读一些新的东西,或者我用书来理解一些东西。
还有一点:这两本书都是Rails方面的书籍,而不是Ruby方面的书籍,如果您打算编写干净的代码,那么尽早花一天时间学习Ruby语法是值得的。Why's Guide to Ruby是一本很好的书,还有其他的。
和你一样,我是一名java/ c#开发人员,试图学习更多的Ruby On Rails。
我正在学习免费的在线课程《Ruby on Rails Programming with Passion》,这是一门很好的入门课程,可以去看看。
我们使用NetBeans作为IDE (win/mac/linux/solaris),如果你习惯Eclipse或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.
再等几个月,Simon St. Laurent和Edd Dumbill的《Learning Rails》将于11月问世。那一系列的书是惊人的,这本书将涵盖Rails的最新版本。
我写了一篇名为“Rails入门——我希望知道的事情”的文章,许多人认为这篇文章很有帮助。
基础知识:
使用Rails进行敏捷开发(书籍) 用于Windows上快速ruby/rails环境的InstantRails Aptana作为IDE 用于版本控制的Subversion
在线教程很不错,但很分散。为了更全面的理解,你可以花30美元买一本书。
我非常喜欢Jetbrains的《RubyMine》。它似乎是一个功能非常齐全的IDE,这是我在许多其他替代品中所错过的。也为了一个简单的环境,我喜欢文本编辑器。简单明了。
一旦您的环境启动并运行,这将有助于为您提供用户可以登录的基本应用程序。
带有所有附加功能的Restful身份验证: http://railsforum.com/viewtopic.php?id=14216&p=1
我目前正在学习RoR,这是我到目前为止所做的: 1. 阅读并遵循SitePoint的“简单Rails 2.2” 2. 阅读并跟随Oreilly的“Rails, Up and Running”第二版。
这两本书很有教育意义,采用了相同的方法,但风格不同;第二本书更激进一些,如果你有一些RoR知识,这是很好的。
如上所述,在阅读资源时要非常小心,有很多过时的视频和文章。
Ruby: 我用过Learn to programming(在一个周末),Ruby Visual QuickStart(信不信由你) 书是“脱离困境”优秀)。这花了大约一周的时间。
Rails: 我刚刚在一个“积极”的星期里完成了Learn Rails。我觉得我已经掌握了所有的细节。这是我认为重要的2009年!
现在我计划将一本更高级的书与一个真实的项目结合起来。
IDE: VIM与rails插件是伟大的,如果你是一个VIM上瘾。否则,试试上面的建议。
当然,铁路广播等,是有用的大多数最新的东西。
我的步骤是:
* Agile development with Rails (book)
* Railscasts - very useful, always learn something new.
* And of course the RoR API
0)先学习ruby。这是非常重要的。Rails的一个巨大优势是Ruby:一种非常强大的语言,但也非常容易被误解。在线浏览一些Ruby教程。当在Daily WTF上遇到编码挑战时,用Ruby编写。你会学得很快的。
1)去买《Ruby for Rails》这本书
2)查看Rails教程并订阅“驾驭Rails”博客。
3)在本地建立应用程序。不要使用脚手架。
4)当你在你的应用中安装插件时,去看看插件中的代码(在你的供应商目录中)并学习它。这是学习Ruby和Rails内部知识的最好方法之一。当你不明白某件事是如何运作的,把它贴在这里,有1000人会帮助你。
至于你的其他问题:
是的,您需要在Linux环境中进行开发。您可以在Windows上开发Rails,但这并不意味着应该这样做。许多宝石在Windows上跟不上速度。
NetBeans作为一个IDE工作得很好。如果你用的是Mac电脑,你会因为使用Textmate而获得好评。
我的公司已经开发了三年的知识管理和决策支持平台mavenlive.com。在过去的几年里,我们学到了很多关于rails的知识,下面是我的一些建议。
Switch to Mac! The tools that are available to you and the development environment on Mac allows you to be far more productive than on Windows. railcasts.com has a wealth of informative screencasts from beginner to expert. You can always find new and more efficient ways of doing things from Ryan's posts. Scaling Rails screencasts coupled with NewRelic has provided powerful insight into the performance of our application and allows us to develop effectively while keeping our eyes open for future scalability issues.
只有+1敏捷Web开发与Rails(尽管确保您获得最新版本)- http://pragprog.com/
我在Mac上开发,这有时是有益的——它是Rails开发人员非常流行的平台,所以你看到的许多博客文章都是面向Mac的。不过Linux也很棒;)
最后——我和公司一点关系都没有——当你有东西想要直播时,heroku是一个不错的选择。找到一个便宜的rails主机并不容易,所以这是一个很好的起点。不过,还有很多其他优秀的主持人!Heroku确实需要git来进行版本控制(尽管您可以在subversion之上使用它)。
祝你好运!
http://www.teachmetocode.com是学习Ruby和Ruby on Rails的绝佳来源。这里有一些介绍Rails基础知识的屏幕视频,还有一个由6部分组成的系列,介绍如何使用Ruby on Rails创建Twitter克隆版。
Railscasts shmailcasts… 1. 想想你想要开发的应用类型。 2. 花20分钟整理一些用户流程 3.带着你的项目去阅读“使用Rails进行敏捷Web开发”的前几章 4. 在windows或mac电脑上安装Netbeans和rails。两者都是一样的。 5. 开发你的应用 6. 在开发过程中,请查阅大量在线参考资料。
实际上,我有一篇关于如何开始使用rails的文章应该会有所帮助。你的问题中唯一没有涉及到的是操作系统。不管你信不信,Mac是这里的主导者!但是我很喜欢使用Ubuntu。有gedit插件让你非常接近TextMate -事实上,我更喜欢gedit。
如果你在一台windows机器上,可以使用linux,这绝对是一个更好的方法。Windows上的Rails有很多问题。
我买了Patrick Lenz写的《Simply Rails 2》。 这本书是对Ruby和Ruby on Rails的很好的介绍。 至于我的ruby安装和db,我使用Cygwin。 它与PostgreSQL, ruby和svn一起提供。 我喜欢PostgreSQL,因为我来自Oracle 所以它感觉比MySQL更舒服。
我发现另一个非常有用的实用程序是pgAdmin 访问PostgreSQL数据库。
我需要做的第一件事就是安装宝石。 我从鲁比弗吉拿了宝石tar文件 wget“http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz”
设置好宝石后,我就开始安装
rails ruby-postgres postgres 架
我还需要一个问题跟踪系统,所以我安装了redmine。 wget“http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz”
我发现使用类unix环境(Cygwin)是很困难的 对我来说更可取,因为许多教程都是这样 泰勒为OS X或Linux。
我使用的文本编辑器是Textpad。我正在寻找替代方案。 我认为带有rails插件的vim可能工作得很好。
我以前在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(专业版)也是一种以相当低的价格获取概念的好方法。
我没有编程背景。我自学了PHP,最近加入了一家专门研究Ruby on Rails的公司。他们有一个全面的Rails培训计划,它足够灵活,可以适应我们想要实现的任何更改。虽然我不是rails专家,但我愿意分享我使用rails的经验。我希望这能有所帮助。
以下是我所遵循的路径(结合我所使用的工具)
Start with a simple ruby guide. It will help a lot, since entire rails framework revolves around classes and objects. Environment and OS are not important. Though I am working on a Mac, I frequently work on Linux and Windows, and I do not face any problems. Start with a good book which explains using a demo app. [I am using Agile Web Development with Rails - By The Pragmatic Bookshelf]. There are many other good books as well. Once you are done with the application, you will have a good idea of the framework. Try to understand the SQL queries generated by Active Record module. Go through the Rails Guides. You will find the framework a lot easier. Keep practicing.
几个关键点
It takes years to learn a language completely. So be patient and do not stop learning. Go through rails api as when required. [While developing your first app] Google the things which you do not understand. People have written great articles on almost all topics. Use Stackoverflow :-) [Only when you are not able to find the solution on your own.] Load railscasts on your phone or video player. Watch 'em while travelling or in your free time. They are of few minutes each. You will learn a great deal of things and also learn the best way of doing things.
工具
Shell[在Mac和Ubuntu中] 编辑器[Mac中的Textmate, Ubuntu中的Gedit和Windows中的notepad++] 安装了Firebug的Firefox进行测试。
最后我有一句话要说“继续努力”。愿一切都好!
《敏捷开发与Rails》一书是最好的教学工具。它有一个很好的类似于生活的应用程序,它通过章节向你介绍不同的概念。我使用了两次示例,之后我有了足够的知识来做自己的事情,并依赖于rails API文档(http://api.rubyonrails.org/)。
我很惊讶为什么很少提到Ruby指南。Why可能已经不在了,但是这个指南很容易在网上找到(谷歌点在这里),它是一个非常简单的阅读,提供了我对Ruby的介绍。
在这份指南之后,我将推荐其他人推荐的书籍之一,或者跟随学习Rails的系列视频,这是我如何学会足够多的Ruby on Rails的。一旦你完成了学习Rails系列。你想用Rails做的事情将开始与一般的教程有所不同,这就是Railscasts成为一个很棒的工具的地方。Railscasts在某些方面没有涉及到Rails可以做的事情。
My first suggestion would be to learn a little about symbols first. Rails isn't the smallest framework ever, and while there's definitely lots to learn, most of it will start to make sense if you have at least a little bit of understanding what makes it different ("special") from other languages. As pointed out, there's no exact analog in any of the major languages, but they're heavily used by Rails, in order to make things read straightforwardly and perform well, which is the reason I brought it up. My very first exposure to Rails was also my first time looking at Ruby (well before 2.0), and the first thing that caught my eye was the goofy :things they were passing around, and I asked, "WTF is that?"
另外,看看RubyQuiz,并在那个网站上阅读其他人的答案。
要学习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进行敏捷Web开发
and
推荐手册
为了好玩
高级Rails食谱
我想链接到另外两个,但Stack Overflow不允许。查看同一网站。
Data Structures and Algorithms with Object-Oriented Design Patterns in Ruby Bruno R. Preiss | Published in 2004 Learn to Program Chris Pine | Pragmatic Bookshelf Published in 2006, 176 pages Mr. Neighborly's Humble Little Ruby Book Jeremy McAnally | Published in 2006, 147 pages Programming Ruby: A Pragmatic Programmer's Guide David Thomas, Andrew Hunt | Addison-Wesley Published in 2000, 608 pages Rails in a Nutshell C. Fauser, J. MacAulay, E. Ocampo-Gooding, J. Guenin | O'Reilly Media Published in 2009, 352 pages Ruby Best Practices Gregory T. Brown | O'Reilly Media Published in 2009, 328 pages Ruby Essentials | Techotopia Published in 2007 Ruby on Rails Security Heiko Webers | OWASP Published in 2009, 48 pages Ruby User's Guide Mark Slagell | Published in 2005 The Book Of Ruby Huw Collingbourne | Published in 2009, 425 pages The Little Book of Ruby Huw Collingbourne | Dark Neon Ltd. Published in 2008, 87 pages why's (poignant) guide to Ruby why the lucky stiff | Published in 2008
我在很久以前看过臭名昭著的“15分钟写博客”视频,当时Rails大概还在1.0版本左右。关于Ruby/Rails世界最重要的事情之一是,鉴于它是一个伟大的社区,与其他框架相比,它的变化速度快得可笑。
今天,Rails与过去相比有了很大的不同,尽管其主要意识形态一直保持不变。尽管在过去的几年里我学到了很多关于Rails的东西,但我仍然在不断地学习关于它的新东西。
对我来说,帮助我发现并跟上Ruby和Rails的最新方法的最有价值的资源如下:
Rails Guides - A nice way of learning Rails itself, edited by the community, moderated by the core contributors. The site has a lot to offer on most of the important main topics around Rails that it can get you up and running very quickly. It covers bot the most recent stable and edge versions of the framework. If you understand the main ideology of Rails than I definitely recommend checking out (and subscribing to) Ryan Bates' Railscasts. Let me just quote from the site itself, I think it's pretty self explanatory: Every week Ryan Bates will host a new Railscasts episode featuring tips and tricks with Ruby on Rails. These screencasts are short and focus on one technique so you can quickly move on to applying it to your own project. The topics target the intermediate Rails developer, but beginners and experts will get something out of it as well. There are also a lot of podcasts around Ruby/Rails, the two that I keep listening to are Ruby5 and the Ruby Show. For more specific questions like API calls etc, I'd recommend APIDock's Rails and Ruby sections where you can get more information on specific methods. If you are getting more familiar with the framework, it's worth taking a look at Rails Best Practices. There's a bunch of short articles on certain issues that most people make in the beginning of their learning curve with Rails. This site is meant to point pot these issues and help beginners finding their way towards writing better and more well thought out code. There's also a gem that you could use which scans your application and points out these issues and offers solutions/workarounds. Pretty neat!
这些资源应该可以帮助您建立和运行Rails。祝您在Rails世界的旅程中好运,欢迎来到这个社区。
这里有一些很棒的建议!
我将列出的一些资源已经被提到,一些我认为没有。我肯定还不是一个专业选手,我只是在过去的几个月里一直在学习,我的进步速度很快。这是帮助我的顺序:
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.
我希望这对你有帮助!我远不是专业人士,但我一头扎进去,尽可能多地从各种资源中汲取。我上面提到的方法是最有帮助的!
哦,现在真正对我有帮助的是制定个人项目和设置特定的任务。跟着做很好,但是当你在没有向导的情况下潜入时,你才能真正学到东西!
我现在正在学习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的语法。
我同意srboisvert的观点。不要在Windows上操作。您可以将Ubuntu (Linux版本)添加到Windows并进行双启动。这需要一些工作,但这比违背常理,试图让所有事情都在寡妇身上工作要容易得多。
Ubuntu, Heroku和Git工作得很出色。要知道学习曲线一开始是陡峭的。从Guru.com或Elance上雇佣一些人来帮助你。
此外,在Mac上运行Textmate是首选的解决方案,所以如果你正在考虑购买一台Mac或有机会使用一台Mac,这是最好的选择。我认为你不需要太多的计算能力……
最后,我最喜欢的书是《Agile Web Development for Rails》。谷歌搜索并不能很好地工作,因为大多数信息来自旧版本的Rails,已经被弃用或不能工作。
神奇的决定!在学习Rails之前,先了解Ruby是非常有用的,所以下面是我对学习Rails的最佳途径的看法:
Learn to Program by Chris Pine - You can read this in an afternoon to get a feel for the Ruby language. The Well Grounded Rubyist by David Black - Like the title says it will give you an excellent grounding in the language. Eloquent Ruby by Russ Olsen - This book is sublime, it reads like a novel. Ruby Best Practices by Gregory Brown - By this point you should be ready for the advanced level of this book. Rails for Zombies - Fun tutorial you can complete in an afternoon. Rails Tutorial by Michael Hartl - Fantastic (and free) tutorial and I have heard his accompanying screencasts are amazing. Agile Web Development with Rails by Sam Ruby - By the time you are finished this you are now a completely capable Rails person!
除了书本之外,最重要的是获得对你所做事情的反馈。要做到这一点,我建议花时间在irc.freenode.net #ruby和#rubyonrails。在stackoverflow上发布你正在做的事情或遇到的麻烦也是非常有用的,因为人们提供的评论、解释和不同的思考方式是非常宝贵的。
你也一定要看看Ruby Rogues播客,他们提供了宝贵的信息,评论员都是Ruby社区里非常受人尊敬的人。为了让你的观看和阅读乐趣(按此顺序),请前往瑞恩·贝茨的《Railscasts》和艾菲恩·贝德福德的《Asciicasts》。
最后,我建议在github上寻找不同的宝石,阅读代码,然后为它们做出贡献。你不必过于雄心勃勃,做大量的重新编码,尤其是在刚开始的时候。只要从一些小事情开始,比如编辑和使README文件更容易阅读。
我不使用IDE,但在Railsconf上我看到了Jetbrains的Rubymine演示,它看起来非常棒。
学习任何东西(包括Ruby on Rails)的最快方法是结对编程。
找一个懂Rails的人,选择一个示例应用程序,坐下来,解决bug,添加功能。
知识共享是不可思议的。
我在Mac OS上使用RoR和textmate编程,这很棒。
我建议“Programming Ruby 1.9”(The Pickaxe Book) for Ruby and Agile Web Development with Rails”来学习Rails,两者都是由Pragmatic Bookshelf出版的。
好运!
这里有很多好意见。我要加上这里没有的。我的经验:
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控制台”)检查数据,并在将代码片段嵌入模型或控制器之前试用它们。
刚开始的时候我也问过同样的问题——希望能得到一个关于学习Rails的规范性指南……我找不到,所以我决定写一篇给那些可能有一天会发现自己处于类似处境的人:)你可以在这里找到它:
学习Ruby和Rails的最佳方法
(它现在实际上在官方Ruby on Rails IRC聊天室中与!learn factoid helper一起返回。)
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.
这门课有一本推荐教材。在这里……但是你可以在网上看讲座和视频。