`

ruby require include的区别

    博客分类:
  • Ruby
 
阅读更多
转自:http://www.cnblogs.com/forward/archive/2010/01/08/1641972.html

“require” 可載入某個 a.rb 檔案, 且可以省略 ”.rb”. 而且它只會在第一次的時候載入, 若再次 “require” 時就會忽略
require 'a'

a = A.new


“load” 和 “require” 一樣但要用 a.rb 全名, 且每次一定會重新載入
load 'a.rb'

a = A.new


載入程式庫的順序呢(類似 java class path)? Ruby 把這個資訊存在 ”$:” 系統全域變數上, 你可以藉著 RUBYLIB 或 ruby -I 來加入新的載入目錄.
puts $:


“include” 用來 mix-in 某個模組, 可以減少書寫的長度
require 'webrick'
include WEBrick

//可以不用 server = WEBrick::HTTPServer.new(...)
server = HTTPServer.new(...)
分享到:
评论

相关推荐

    Ruby中require、load、include、extend的区别介绍

    ### Ruby中require、load、include、extend的区别介绍 在Ruby编程语言中,为了实现代码的重用和组织,开发者经常需要引入外部文件或模块。在这一过程中,`require`、`load`、`include`、`extend`这几个关键字发挥了...

    Ruby-Emojiemoji的Rubygem

    Ruby-Emoji,也被称为`emoji`,是一款在Ruby编程语言中的Gem(库),它使得开发者能够在他们的代码中方便地使用和处理表情符号(emoji)。这个Gem是Ruby开发中用于管理和操作Web资源,特别是与文本相关的应用程序,...

    开放Ruby+watir 自动化测试工具介绍+安装说明

    Ruby和Watir(Web Application Testing in Ruby)是一个强大的自动化测试框架,主要用于Web应用程序的测试。Ruby是一种面向对象的、动态的编程语言,以其简洁、优雅的语法和强大的元编程能力而受到开发者的喜爱。...

    08Ruby 模块.docx

    ### Ruby 模块详解 #### 一、Ruby 模块简介 ...通过`require`和`include`语句,可以轻松地在不同文件间共享和重用代码。此外,利用 Mixin 功能,可以实现类似多重继承的效果,使得代码更加灵活和可维护。

    Ruby-Money一个Ruby库来处理货币和货币转换

    Ruby-Money库是一个专门为Ruby编程语言设计的强大工具,它专注于处理货币相关的运算和货币转换。这个库被广泛用于需要精确管理货币数据的应用程序,比如电子商务、财务系统或者任何涉及金融交易的项目。在Ruby社区中...

    Ruby-elasticsearchrubyRuby集成Elasticsearch

    require 'elasticsearch' client = Elasticsearch::Client.new hosts: ['http://localhost:9200'] ``` **3. 使用Elasticsearch-model** 如果你的Ruby对象需要映射到Elasticsearch索引,可以使用`elasticsearch-...

    Ruby读取INI文件

    elsif line.include?('=') key, value = line.split('=', 2).map(&:strip) # 分割键值对 @data[section][key] = value end end end def [](section) @data[section] end end # 使用示例 reader = ...

    Ruby-PyCall从Ruby语言调用Python函数

    Ruby-PyCall是一个非常有用的库,它允许Ruby程序员无缝地调用Python的函数和模块,极大地扩展了Ruby的生态系统。这个库使得两个语言之间的交互变得简单而高效,特别是在需要利用Python的强大科学计算或数据处理能力...

    ruby程序:ruby selenium Web驱动程序

    Ruby Selenium Web驱动程序是用于自动化Web浏览器操作的强大工具,它允许开发者使用Ruby语言编写脚本来控制浏览器的行为。这个工具主要用于Web应用的测试,但也可以用于其他需要浏览器交互的场景。在Ruby中,...

    ruby初学者教程(对初学者很有帮助)

    `require`和`load`用于加载外部文件,`include`用于将模块混合到类中。 ```ruby require 'my_module' ``` #### 九、异常 **9.1 异常处理** Ruby使用`begin...rescue...end`块来捕获和处理异常。 ```ruby begin ...

    Ruby-httparty让http有趣

    require 'httparty' class MyApiClient include HTTParty base_uri 'https://api.example.com' def get_user(id) response = get("/users/#{id}") response.parsed_response end end client = MyApiClient....

    Ruby-Ox一个快速的XML解析器

    1. **引入库**:首先,在Ruby脚本中引入Ox库,`require 'ox'`。 2. **创建解析器**:然后,你可以创建一个Ox::Sax或Ox::Doc对象,根据你的需求选择解析模式。 3. **处理事件**:如果你选择SAX模式,你需要定义一些...

    Ruby编程,实用程序员指南Programming Ruby, The Pragmatic Programmer's Guide

    《Ruby编程,实用程序员指南》是一本针对Ruby语言的学习教程与参考手册,旨在为程序员提供一个全面、深入的Ruby语言学习资源。本书不仅适合初学者快速入门,也适合具有一定经验的开发者进阶学习。 ### 一、Ruby语言...

    ruby+selenium-webdriver测试--第一个例子源代码

    require 'selenium/webdriver' # 初始化WebDriver,这里以Chrome浏览器为例 driver = Selenium::WebDriver.for :chrome # 打开一个网页 driver.get 'http://www.example.com' # 查找页面元素,例如一个搜索框 ...

    Ruby的25个编程细节(技巧、实用代码段)

    **Struct** 和 **OpenStruct** 都是用来创建简单的数据容器的类,但它们之间存在一些显著的区别: - **Struct** 在定义时需要明确声明所有字段,而 **OpenStruct** 可以动态添加属性。 - 性能方面,**Struct** 优于...

    Ruby-RedisObjects直接将Redis类型映射成Ruby对象

    **Ruby-RedisObjects:直接将Redis类型映射成Ruby对象** Ruby-RedisObjects是一个非常实用的库,它允许开发者在Ruby应用程序中直接操作Redis数据结构,就像操作Ruby对象一样。这个框架是Ruby社区对ORM(对象关系...

    ruby 2.00 selenium webdriver,watir webdriver 备份打包

    assert browser.title.include?('Ruby Watir') browser.close ``` 在这个例子中,Watir WebDriver通过更简洁的语句实现了相同的功能,使得代码更易于理解和维护。 总的来说,Ruby 2.00、Selenium WebDriver和...

    Ruby-Perpetuity使用DataMapper模式持久化Ruby对

    Ruby是一种动态、面向对象的编程语言,而DataMapper是一种Object-Relational Mapping(ORM)框架,它在Ruby社区中被广泛使用,特别是对于那些希望在数据库中存储和管理对象的开发者。Perpetuity就是这样一个专门为...

Global site tag (gtag.js) - Google Analytics