简单Ruby包含扩展示例

简单Ruby包含扩展示例,ruby,include,extend,Ruby,Include,Extend,我想我在理解课程中的包括,扩展等方面缺少了一些基本知识。我有一个类OauthFigshare,它在它的单个方法initialize中使用对OAuthgem的调用。我希望这个类的对象能够访问所有的OAuth方法,这样我就可以在初始化对象之后执行object.get之类的操作 你能解释一下你选择的逻辑吗 全班包括: #!/usr/bin/ruby require 'oauth' class OauthFigshare def initialize (consumerkey, consum

我想我在理解课程中的
包括
扩展等方面缺少了一些基本知识。我有一个类
OauthFigshare
,它在它的单个方法
initialize
中使用对
OAuth
gem的调用。我希望这个类的对象能够访问所有的
OAuth
方法,这样我就可以在初始化对象之后执行
object.get
之类的操作

你能解释一下你选择的逻辑吗

全班包括:

#!/usr/bin/ruby

require 'oauth'

class OauthFigshare
    def initialize (consumerkey, consumersecret, accesstoken, accesstokensecret)
        @consumerkey = consumerkey
        @consumersecret = consumersecret
        @accesstoken = accesstoken
        @accesstokensecret = accesstokensecret
        @apiurl = "http://api.figshare.com"

        @consumer = OAuth::Consumer.new(@consumerkey,@consumersecret,{:site=> @apiurl})
        @token = { :oauth_token => @accesstoken,:oauth_token_secret => @accesstokensecret}

        @client = OAuth::AccessToken.from_hash(@consumer, @token)
    end
end

为什么不直接从
OAuth::Consumer
类派生呢?像
classoauthfigshare
我在考虑这个问题,但是我可以从整个OAuth超类派生出来吗,所以我不必在
Consumer
AccessToken
之间进行选择?
Consumer
没有超类。而
AccessToken
来自
ConsumerToken
。想想看,如果您可以从一个超类派生,那么您就不会拥有
消费者
访问令牌
的功能!谢谢我认为我实际上需要从
AccessToken
派生,因为这实际上是用来处理html请求的。