首先,也许因为本人 rails 还没太深入的缘故?可能认识会有些片面,这也是我使用了阶段性总结
这个名字的缘故吧。
起这么个名字是为了给刚刚接触 rails 的新人,包括像我这样已经熟悉了 Ruby, 才过渡到 rails 的半新人
一个提醒吧。纯粹个人经验,各位看看就好了。
主要理由如下:
也许社区的很多大佬都是从 web 开发领域直接过来的,所以直接无视 web 基础这方面的一些培训之类的,既然没有人提出来,那我就通过自己的亲身经历来提及一下吧。
如果你也是刚开始接触 rails, 感觉提不起兴趣,或者看起来累,先搞懂 web 开发再说吧。
说来说去,这篇帖子想表达给学习 rails 的新人的最重要的观点是: 不要忘记 rails 是一个 web 开发框架,不懂 web 开发的情况下,使用 rails, 那种感觉是很不舒服的,也不明智的
以我自身的经验,我可以肯定的说:
只要你熟悉 Ruby, 精通 web 开发的方方面面,并且熟悉 linux, 使用 rails 简单多了.
顺便说下:个人觉得,rails 的成功,让一个人或者三两个人创建一个小型的网站,成为一个现实的可能。这也是为什么那么多创业型的公司选择 rails 做网站的原因吧。换句话说:既然三两个人就构建一个网站成为可能,所谓的前端
, 后端
的分别貌似就没那么明显了。搞 rails 的人需要全才呀!我想这也是为什么国外搞 rails 的那些牛人,收入那么高的缘故了。
我觉得正如您所说,看问题也要阶段性,由浅入深,我相信在后期,对 ruby 和 rails 进行深入了解也是有必要的,当然这要看有没有兴趣。另外,我认为 ror 适合那些把开发技术当乐趣并有一定英语基础,最关键的是要有接受新事物能力伤,触类旁通,自学东西特别快的天分。
#1 楼 @zw963 的确,如果其他朋友有兴趣的话,我建议去找找 DHH 在写 Rails 之前的经历,的确是在掌握了丰富的 web 开发基础之上才构建了 Rails 框架。
这个社区的技术话题的确以 rails 为主。试试看访问 rails-china.org 和 rails-china.com 我刚刚把这两个域名都 Redirect 过来了。
精通 rails 要涉及的东西也很多
1.编辑器 有 vim Emacs TextMate 等
2.版本控制 git 等
3.web 开发 HTML 和 jquery coffeescript 等
4.数据库 mysql mongo redis 等等
5.测试 rspec cucumber 等
非常赞同 Lz,学习了 ROR 有一段时间,对于没有 web 开发经验的来说很多东西要摸索。 感觉先是从 MC 有点感觉,然后发现 V 太难,熟了以后再深入 MC 对学习 Rails 来说 Web 基础真的很重要
我现在觉得 rails 就是那么一回事。。。用起来不需要考虑太多。 但是需要加功能,处理 bug,就又是一番新天地了,不对 rails 有一定了解深入不下去。
熟练的掌握了 Ruby,不见得就能很快的学习 Rails,尤其是没有 web 的开发经验。 但是,如果 Ruby 掌握的不深,那肯定也用不好 Rails :) 这一点可以从很多 Rails 牛 (如 DHH) 写的其他的 gem 中就可以看出,他们的 Ruby 代码写的很是精妙,是学习 Ruby 实践的好素材。
总之~ 真正的 Rails 牛是Ruby和Rails及Web这三方面都牛,确实没见过那种对 Ruby 掌握不深的 Rails 牛。 :)
zhuxi 说的好啊,这东西根本就不适合没做过 Web 的新手玩
Rails 滥用 Ruby 的元编程能力,导致 Rails 的学习成本比 Ruby 本身还高,坑爹的
是啊~~ 成本很高,不过一旦精通 rails 的架构,也就精通 Ruby 了。 不过仅仅使用 rails 做 web 开发,根本没必要多精通 Ruby.
对了,我刚发了个帖子. http://ruby-china.org/topics/2608
柯南给分享下你 Vim 的经验呗。
@zw963 最后一段话特别有同感,rails 确实是一个小团队快速开发和创业的不二之选,所以这种团队的成员大多数都比较全才;另一方面国外的程序员相对较少,人力成本高,而国内刚好相反。。。这不是个技术问题 :)
学 Rails 的三个阶段:-) 1.昨夜西风凋碧树。独上高楼,望尽天涯路。 2.衣带渐宽终不悔,为伊消得人憔悴。 3.众里寻他千百度,蓦然回首,那人却在灯火阑珊处。
前几天想自己用轻框架写个东西,选了 sinatra,开始感觉还不错,越到后来越发现不方便,服务器重起和模版 partial 之类的都要额外安装包,真心不想折腾了,搞回 rails……
@rainchen 看了一下似乎是把 sinatra 的功能扩展到尽量接近 rails,老实说现在真不像尝试新的了,对我来说论学习成本的话 rails 还低一些。
本以为 sinatra 会是像 python 的 bottle 那样,麻雀虽小五脏俱全的框架。
DHH 以前好像说过,rails is not for beginner,台湾的那个兄弟(就是几年前总结 best practise 的那个,名字一时想不起来)也说过,如果你的思路和 DHH 一致,那么 rails 很爽,否则很困难。 至于 ruby,我一直觉得它最大的价值就是发明 DSL,几十年前的老程序员通过发明一种语言解决某个领域的一片问题,现在我们可以用 ruby 发明自己的 DSL,性质一样,只是更简单,而 rails 是其中名气最大的 DSL 集合。