
ruby & ruby on rails
文章平均质量分 65
iteye_21297
这个作者很懒,什么都没留下…
展开
-
Ruby数组操作总结
数组的创建arr = Array.new num #创建num个元素的数组,所有数组元素为nilarr = Array.new num, elem #创建num个元素的数组,所有数组元素为elemarr = Array(m..n) #创建m..n元素为m到n的数组(包括n) m...n不包括narr = (Array)[elem1, elem2,....elemn] #Arra...原创 2009-08-04 11:50:03 · 177 阅读 · 0 评论 -
使用Ruby DBI模块
使用Ruby DBI模块 原著 Paul DuBois paul@kitebird.com 翻译:liubin 2004/11/9 http://www.ruby-cn.org/ 原文地址:http://www.kitebird.com/articles/ruby-dbi.html 文档版本: ...原创 2009-08-18 12:29:40 · 93 阅读 · 0 评论 -
Symbol对象
Symbol 对象用于表现Ruby解释器内的名字或一些字符串。它们自动地由 :name 或 :”string” 字面值自动生成。在程序运行期间,对于给定名字的字符串将创建同一Symbol对象,而不管名字的含意和上下文环境。 也就是说,符号Symbol 是一种很专一的对象,计算时(就算是包含展开式),只要其结果是同一个字符串...原创 2009-08-07 10:19:20 · 200 阅读 · 0 评论 -
ruby中的单例模式
Singleton模块实现了单态模式(Singleton pattern)。 一、用法: class Klassinclude Singleton# ...end1、这确保只有一个Klass的实例得到调用。 “这个实例”可以它创建的。a,b = Klass....原创 2009-08-05 16:00:20 · 271 阅读 · 0 评论 -
ruby中的观察者模式
require 'observer'class TV include Observable def turn_on puts "TV is on!" changed #TV state changed notify_observers(self) #notify observer en...原创 2009-08-05 15:56:41 · 270 阅读 · 0 评论 -
区别Ruby的require,load,和include
三者之间区别并不像你想的那么难,也不会像有些文章写的那么长。挺简单的。 相同之处:三者均在kernel中定义的,均含有包含进某物之意。不同之处:1、requre,load用于文件,如.rb等等结尾的文件。2、include则用于包含一个文件(.rb等结尾的文件)中的模块。3、requre一般情况下用于加载库文件,而load则用于加载配置文件。4、...原创 2009-08-05 15:49:26 · 101 阅读 · 0 评论 -
Object and Reflection
摘自:http://anw.stikipad.com/ocean/show/Object+and+Reflection 看看 ruby 如何深入探討 object 的相關功能, “o” 表示某個 object instance o.class 找到 object 的 class o.methods 可以找到 methods o.res...原创 2009-08-05 15:34:48 · 110 阅读 · 0 评论 -
Blocks, Closures and Proc Objects
Ruby 的 block 是個不錯的設計. 一個 block 就是一些程式碼, 其 context 為正在動態執行的環境. 有點像是一般稱為 callback 機制, 但 block 方法精巧多了 當你呼叫 method 時, 你可以給它一個 block. 下面 “each” 是 method, do ~ end 中間就是 block, |x|, x 就是傳給 block 的參...原创 2009-08-05 15:18:38 · 149 阅读 · 0 评论 -
Enumerable模块
可枚举模块。Enumerable mixin 是含有几组遍历与查寻方法的集合类,而且它还有排序的能力。如果你希望自己的类也具有集合类这么多优秀的特点,那么这个类必须提供一个each方法,在这个方法内,它产生连续的集合成员。即依次返回你自己集合类的元素。然后再在你的类中混合插入Enumerable模块,你的类就可支持map、include?、fin...原创 2009-08-05 14:59:05 · 145 阅读 · 0 评论 -
Comparable模块
Comparable mixin由希望对它的对象进行排序的类使用。同时,这个类必须定义<=>操作符,用于定义这个类如何同接受的另一个对象如何比较,根据是否小于,等于或大于这个其它对象来决定返回值-1、0、1。Comparable使用<=>来实现常规的比较操作符(<, <=, ==,>=, 与 >)和between?方法。例如:...原创 2009-08-05 12:20:29 · 119 阅读 · 0 评论 -
Proc过程对象
就是所谓的过程对象。Proc对象是将一组局部变量绑定到一起的代码块。一旦绑定,代码可以在不同的上下文环境中被调用且可保持对这些局部变量的访问。Proc是对块及其上下文环境(局部变量的作用域)进行对象化处理后得到的过程对象。你可以像使用匿名函数那样使用Proc。导入到Proc内的局部变量没有作用域的问题,也就是说,Proc内的局部变量会让你...原创 2009-08-05 12:04:13 · 161 阅读 · 0 评论 -
Method对象
Method 对象是由 Object#method(:method_name) 方法创建的,且与一个特定对象相关联(而不是与一个类关联)。它们可以被用于调用这个对象内的方法,就像与迭代器关联的块一样。Method 对象封装了方法的实体(是内容而不是方法名)和被调对象(即持有这个方法的对象)。Method 对象与Proc...原创 2009-08-05 11:36:35 · 295 阅读 · 0 评论 -
Struct对象
结构体类Struct是将许多属性(atributes)捆绑在一起的方便途径,可以使用存取器方法,而不必直接写一个类。Struct类是一个指定类集的生成器,它的每个子类都被定义为持有一组变量和它们的存取器。 也就是说,Struct.new方法能生成Struct类的子类。在子类中使用new方法就可以生成构造体。而构造体的子类中定义了构造体...原创 2009-08-04 17:50:42 · 300 阅读 · 0 评论 -
Range对象
Range对象表现为一个间隔,有开始与结束的值集。Range对象可以由范围操作符s..e及s…e字面值,或者用Range::new构建。由..操作符构建的Range对象包括范围的终点end值,而由…操作符构建的Range对象不包括范围的终点end值。当用于迭代器对象时,Range...原创 2009-08-04 16:29:29 · 135 阅读 · 0 评论 -
Ruby学习笔记
1、$variable 代表全局变量, @variable代表成员变量,@@variable代表类静态变量2、双引号内解析表达式,"... #{expression}",对于全局标量或成员变量,花括号可省略3、局部变量、成员方法参数、成员方法的命名约定都以小写字母或下划线开头 类名称、模块名称、常量的命名约定都以大写字母开头 一般多词组成的成员变量用下划...原创 2009-08-04 16:27:21 · 194 阅读 · 0 评论 -
ruby惯用法
Ruby有不少惯用法,这里略作一些介绍,也方便阅读他人代码: 迭代 一般写法: 代码:for i in (1..10) puts i end习惯写法: 代码:(1..10).each{|i| puts i} 或 1.upto(10){|i| puts i} # from njm...原创 2009-08-04 15:27:28 · 140 阅读 · 0 评论 -
Ruby哈希表
哈希表的建立: Hash.new Hash.new default #这是hash表为空,但是如果使用某个键访问hash表将得到默认值 Hash[ key, value, key, value....] Hash[key=>value, key=>value....] {key => value, key => valu...原创 2009-08-04 14:51:06 · 134 阅读 · 0 评论 -
Ruby中的数组过滤
数组可以算是计算机编程中用到的最多的一个数据结构了,ruby中也是如此,这次我们来看看如何对数组中的项进行过滤,选出自己需要的项。首先,假如有一个包含人名的数组:>> name = %w{ zhangsan lisi wangwu zhaoliu galeki lyanry liulanger xiaosl tom nick bara}=&g...原创 2009-08-04 12:19:49 · 148 阅读 · 0 评论 -
ruby 连接操作 sql2005
The following is improved version of the code created by David Mullet, fromhttp://rubyonwindows.blogspot.com/2007/03/ruby-ado-and-sqlserver.html require 'win32ole'class SqlServer # This class...原创 2010-05-24 09:38:44 · 118 阅读 · 0 评论