免责声明 - Ruby是我学过的第一种语言。我没有任何CS背景。
我已经完成了Chris Pine的“学习编程”,这本书很愉快,我现在很了解基础知识。下一本推荐的书是“Programming Ruby 1.9”(下一个PickAxe)。从我读过的内容来看,它只是一本庞大的参考书,但它只有960页,让我感到害怕。
在您看来,我应该学习的下一个“必须知道”的概念是什么?
提前致谢。
答案 0 :(得分:4)
阻止和一些元编程。
答案 1 :(得分:3)
一个很好的起点(对我而言......)是Ruby on Rails上的Ryan Bates截屏视频: http://railscasts.com/ (从最低的数字开始......)
答案 2 :(得分:3)
我查看了你读过的教程。缺少一个非常重要的概念:符号。您可以在"ruby learning"中找到相关信息。它们在rails中用作选项名称。
当我尝试阅读rails示例时,困惑我的另一个概念是,当哈希是函数的最后一个参数时,可以省略花括号。所以:
def foo( 1, "blah", "a" => "b", "c" => "d" )
应为:
def foo( 1, "blah", { "a" => "b", "c" => "d" } )
函数foo
只有三个参数。
答案 3 :(得分:1)
看看Humble Little Ruby Book(免费),以便更熟悉其他几个概念。
另一本书将是Ruby for Rails。
答案 4 :(得分:1)
你实际上并不需要知道任何关于Ruby的东西,以便能够组建一个Rails站点。我开始只是一起攻击我的网站,注意到很好的语言结构,看到他们在我使用的插件和宝石的源代码中做了什么。
在Rails中快速构建内容的满足将让你继续前进。
在Rails约定方面有足够的知识来学习如何让你的思想保持忙碌并且在Ruby中取得进步并不是一段时间的优先事项。
浏览Rails指南http://guides.rubyonrails.org/以开始构建功能。
答案 5 :(得分:1)
答案 6 :(得分:1)
对我来说最重要的是自我意味着在类定义的不同点,以及实例变量与类变量与单例变量的概念。
class Foo
@variable # is an instance variable on the class object, not on instances derived from this class
def bar
@variable2 # is on instances derived from this class
end
def self.baz # this is a class level method, similar to static methods in something like java
@variable3 # gets defined on the class object again
end
end
f = Foo.new
def f.wtf #this method gets defined only on this single instance of Foo
@variable4 #this variable will only be for the f instance
end
在我擅长红宝石之前,这种事情一直让我陷入困境中,但是我想到了类对象,对象个性化以及self
在任何给定位置指向的东西的意思我最难学的东西。
答案 7 :(得分:0)
我读过有关编程语言的最有趣的事情是_why的Ruby指南。
这很有趣,很有艺术气息,写得很好。另外,在“使用Rails进行敏捷开发”附录中有一个Ruby介绍。这似乎只有适量的编程介绍才能开始。
http://en.wikipedia.org/wiki/Why%27s_%28poignant%29_Guide_to_Ruby