做个小调查,看看有没有童鞋需要这方面的帮助 因为之前也是这个卡了很久,就是看了 Rails Tutorial 或者 CodeSchol 之后,到真正实现自己的小想法(原型)还有一小步的距离。如果有需要的话,我可以写一点经验
注意:主要是对于 0 基础初学 Rails 的童鞋,不是专业工程师的那种
为啥非要学 rails 啊? 如果楼主认准 rails 了,就忽略我下面的话吧 可以简单了解下比较小的框架,比如 Sinatra,比如 web.py。python 本来就比 ruby 精简很多。rails 又具大无比。 觉得还可以考虑下 head first 的 html 和 php。也是不错的选择。 觉得学习这东西始终挑最容易的学比较好。。。
无从下手的原因就是丫的就没下手。AWDWR 和 Rails Tutorial 看其中一本之后,就应该找个点子自己去做了,之前看过楼主的帖子,应该也是从实战过来的。
当然,提供一些基本入门的资料可以提高初学者 get hands dirty
的勇气,但终究能否迈出这一步要看自己。
最近在学校里尝试带几位师弟学 Rails,看完 Tutorial 就丢项目给他们了。
这两天好像都在提 Rails Tutorial 大家说的是 Michael Heartl 的带视频的那个嘛?
我觉得跟着视频敲一遍的话效果还不错 以后自己要做东西可以跑回来再看一下自己的 code, 看类似问题是怎么解决的
看了楼主的分享,还是很实用的。
rails 的教学方式,其实犯了一个根本错误,就是“邪恶的向导”(《程序员的修炼之道》)。讽刺的是犯错的正是书的作者 Dave。他是第一个写 tutorial 的人。一上来就是 generate,生成一堆东西。学习者跟着模仿,不懂原理。
正确的学法,应该是学习 Ruby+web 的常识课程,一周时间可以入门了,不需要很高的水平,纯粹手工写,《Learning Rails》似乎是这个思路,不知道有没有中文版。懂了,再去用 generate。
软件都有复杂化的倾向,既有功能的需要,也有一些开发者利益的问题。如果你离开一段时间回来,会发现冒出来一大堆没听说过的名词,什么 pipeline 之类的。
分享一点我的 rails 项目经历。我是从 1.0 开始的,本来想做一个类似豆瓣的东西,后来发现难度太大就放弃了。后来我去做了一段时间 php,Ruby 情结又让我回来了,发现已经 3.0 了,进步了很多,学习依然困难。
12 年我接触了一个商业项目,我可以跑起来,涉及很多插件,里面的原理我真不懂。
13 年开发一个小项目,我自己琢磨了一个简化模式,http://ruby-china.org/topics/8357。
现在做一个商业项目,难度还是有,基本能应付。
有一个经验谈,就是用多少学多少。重视基础的学习 rhcj(RubyHtmlCssJs),那些变化慢。
#2 楼 @Rei 我只知道 Sinatra 比 rails 简单。。。你的意思是说,资料什么的不全吗?我想我对 Sinatra 的看法是错误的。。。
#6 楼 @lidashuang 能具体说明吗?
人家开头就说了,Rails Tutorial 不是面向纯新手的
Inexperienced programmers: The Rails Tutorial is not aimed principally at beginning programmers, and web applications, even relatively simple ones, are by their nature fairly complex.
不过对我(非职业 web 开发人员)来说,Rails Guides 更合适一些。
我觉得 rails 官网的 guide 看完就能写代码了,看 guide 时对着 api 看,guide 中出现的不懂的可以去查查 api,这样学习效率比较高。然后就是遇到问题多用 stackoverflow 查。如果只看一些教程,跟着做完,确实效果不大。要在学习的过程中知其然知其所以然,这样才能真正的掌握。学会解决问题的方法比解决问题本身更重要。
#13 楼 @Rei #15 楼 @lidashuang 非常赞同!rails 提供了非常多的便利!觉得写 sinatra 是上手容易,但真正写好了,很困难,对程序员的要求很高!
但如果只从学的角度考虑呢?觉得 web 开发,还要学习 html,css。这些相对简单,也容易上手,入门什么的应该也说的过去。php 的好处是直观(不框架什么的),php 直接嵌在 html 内,比较容易理解,再比如 url 也和文件有个简单的对应关系。而 rails 有很的封装和约定的东西,觉得对于新人理解起来并不容易。
觉得学习来讲,循序渐进比较重要,当然这个也和人有关。当然,如果考虑到楼主需求的特殊性,学习 rails 也是不错的选择!
楼主真是及时雨,我就是卡在这里了,Rails Tutorial 基本看完,代码也敲了几遍,现在的状态就是要说完全不懂,也不完全是,但是想做点什么又不知道如何下手。
#18 楼 @sphawkcn 之前写的内容嫌长被我删了 主要是看你是哪个向的。我是自己有想法,就自己写原型,然后碰到具体问题就具体解决,比如: Vote/Like功能(对于喜欢的帖子,我们可以投票+1赞),我就去google 'Rails Vote', 然后就找到了相关的 gem 和 stackoverflow 上的问答,和 railscast 的教程,这样照着写,就写出来一个功能了。具体实现的时候碰到小问题,又会去上 stackoverflow 直接问
之前写过一个草稿,你可以先看看http://www.douban.com/note/323005582/
我想表述的就是通过google搜索,然后使用stackoverflow, RailsCast这些东西来解决问题
其实就我带 0 基础新人的经验来看…先读 guides 的 start up 版,至少要把代码照抄然后跑通一边,之后仿照范例 blog 的技术栈做一个类似的东西练手,期间因为代码不能照抄所以要他们一点点抠明白,等写完基本上就有能力自己找资料自己摸索了…