Ruby

ruby ftp封装实例详解

 ruby ftp封装实例详解 最近自己用ruby 封装了一个Net::FTP的工具类. class FtpTool def initialize() @current_ftp = create_ftp end   # 获取指定格式的文件名称列表   # 例如: source = “test/*.txt”   # 返回: [sourc... »

Ruby中的Hash哈希类型基本操作方法小结

1.创建哈希:就像创建数组一样,我们可以通过Hash类来创建一个Hash实例: h1 = Hash.new #默认值为nil h2 = Hash.new(“This is my first hash instance”) #默认值为” This is my first hash instance”: 上面两个例子都创建了一个空的Hash实例。一个Hash对象总是有一个默认的值——因为如果在一个Ha... »

Ruby中的Proc类及Proc的类方法Proc.new的使用解析

Proc是对块及其context(局部变量的作用域以及栈框架)进行对象化处理之后得到的过程对象。您可以像使用无名函数那样来使用Proc,但它不会导入局部变量的作用域(可以把动态局部变量用作Proc局部变量)。 在下例中,正因为Proc一直保持着局部变量的作用域,所以才能调用var变量。 var = 1 $foo = Proc.new { var } var = 2 def foo $foo.cal... »

Ruby中XML格式数据处理库REXML的使用方法指南

以树方式使用 REXML REXML 的目的是 正好够用。在最大程度上,它能很好地完成任务。 实际上, REXML 支持两种不同样式的 XML 处理 ― “树”和“流”。 第一种样式是 DOM 所尝试要做的更简单的版本;第二种样式是 SAX 所尝试要做的更简单的版本。 让我们先研究树样式。假设我们要提取上一个示例中的同一个地址簿文档。 下面的示例来自我所创建的经修改的 eval.rb ; 标准 e... »

实例解析Ruby设计模式编程中Strategy策略模式的使用

今天你的leader兴致冲冲地找到你,希望你可以帮他一个小忙,他现在急着要去开会。要帮什么忙呢?你很好奇。 他对你说,当前你们项目的数据库中有一张用户信息表,里面存放了很用户的数据,现在需要完成一个选择性查询用户信息的功能。他说会传递给你一个包含许多用户名的数组,你需要根据这些用户名把他们相应的数据都给查出来。 这个功能很简单的嘛,你爽快地答应了。由于你们项目使用的是MySQL数据库,你很快地写出... »

简单谈谈Ruby的private和protected

下面这段程序让我纠结了很久,Ruby中private的概念真的很奇怪。。。 class Test private def test_print puts 'test' end end class Test2 < Test def test_print2 # self.test_print #=> 这里加上self就不能调用,private method `test_print' cal... »

Ruby on Rails中的ActiveResource使用详解

当 HTTP 响应是一个与存在的格式不同的格式时(XML 和 JSON),需要某些额外的格式解析,创一个你惯用的格式,并在类别中使用它。惯用的格式应当实作下列方法:extension, mime_type,     encode 以及 decode。      module ActiveResource module Forma... »

在博客中屏蔽垃圾留言的简单方法

垃圾留言俗称 Spam,就是到处在留言框里发垃圾广告的那些,相信大多数人都见识过。以前使用 WordPress 的时候,因为装了防 Spam 的插件,可以屏蔽掉绝大多数的 Spam。但是自从上个月从 WordPress 迁移到新的博客平台后,第一天上线就遭遇了几个Spam,全都是国外的推广的广告什么的。博客的访问量本身就很小,如果每天都来几条 Spam,太煞风景了,手工删除也太浪费时间,而且又是自... »

ruby实现网页图片抓取

前段时间看到很多人写的下妹子脚本,自己也写一个 module CommonHelper require 'nokogiri' require 'open-uri' def down_load_xmz site_url = "http://www.xxx.com" for index_page in 1..141 doc_html = Nokogiri::HTML(open(site_url+'/s... »

ruby基本数据类型简明介绍

概括、ruby中的基本数据类型都是类类型,只不过为了书写和阅读的方便,为基本数据类型提供了较为简洁的书写方式而已。 一、数值类型 整数支持二进制,八进制,十进制,十六进制,根据整数的大小动态决定整数是Fixnum类型还是Bignum类型。 浮点数支持科学计数法,小数点后至少有一个数字。 数值类型继承图如下: 代码如下: Numeric  |–Integer  &nb... »

收集的多个ruby遍历文件夹代码实例

一、遍历文件夹下所有文件,输出文件名 代码如下: def traverse_dir(file_path)     if File.directory? file_path         Dir.foreach(file_path) do |file|    ... »

详解Ruby中的方法概念

 Ruby方法跟其他编程语言中的函数非常相似, Ruby方法用于捆绑到一个单元中的一个或多个重复的语句。 方法名称应以小写字母开始。如果一个方法的名称以大写字母开始,Ruby可能会认为这是一个常数,因此可以正确解析调用。 方法应该定义Ruby的之前调用他们,否则会引发一个异常未定义的方法调用。 语法: def method_name [( [arg [= default]]...[, *... »

在Ruby中处理XML和XSLT以及XPath的简单教程

什么是 XML ? XML 指可扩展标记语言(eXtensible Markup Language)。 可扩展标记语言,标准通用标记语言的子集,一种用于标记电子文件使其具有结构性的标记语言。 它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。 XML解析器结构和API X... »

Ruby中用线程实现经典的生产者消费者问题代码实例

示例代码: 代码如下: require “thread” puts “ProAndCon”    queue = Queue.new    #用队列Queue实现线程同步     producer = Thread.new do     10... »

深入讲解Ruby中Block代码快的用法

Block 定义 some_array.each { |value| puts value + 3 } sum = 0 other_array.each do |value| sum += value puts value / sum end     A block is somewhat like the body of an anonymous method &n... »

对Ruby on Rails进行高效的单元测试的教程

在笔者开发的系统中,有大量的数据需要分析,不仅要求数据分析准确,而且对速度也有一定的要求的。没有写测试代码之前,笔者用几个很大的方法来实现这种需求。结果可想而知,代码繁杂,维护困难,难于扩展。借业务调整的机会,笔者痛定思痛,决定从测试代码做起,并随着不断地学习和应用,慢慢体会到测试代码的好处。     改变思路:能做到从需求到代码的过程转换,逐步细化;  &... »

优化Ruby代码使程序运行速度提高的例子

这篇文章主要介绍了我是如何把ruby gem contracts.ruby速度提升10倍的。 contracts.ruby在我项目里用来添加代码合约(code contracts)到Ruby中。看起来差不多是这样的: Contract Num, Num => Num def add(a, b) a + b end 只要add方法被调用,参数和返回值都会被检查。 20秒 本周末,我对该库进行了... »

Rails Routes中new、collection、member的区别浅析

RESTful风格的路由动词默认有7个。如果想添加一个member方式的路由,可以这样:复制代码 代码如下:resources :photos do member do get 'preview' end end 将会添加一个路由:GET请求/photos/1/preview路由到PhotosController的preview action,同时也会新建preview_photo_url ... »

Ruby和元编程之万物皆为对象

开篇 空即是色,色即是空。 空空色色,色色空空,在Ruby语言中,万物皆为对象。 Ruby是一个面向对象的语言(Object Oriented Language),面向对象的概念比其他语言要贯彻的坚定很多。 Ruby中不存在Java中原始类型数据和对象类型数据之分。大部分Ruby中的的东东都是对象。 所以,想要掌握Ruby和Ruby的元编程,对象就是第一门必修功课。本回就着重研究一下Ruby中的对... »

win7安装ruby on rails开发环境

前言 看到很多文章都说ruby环境在windows上是非常难搭建,会出现各种各样的怪问题,所以都推荐到linux和mac上安装开发。但是我按照教程搭了下,问题也不算太多。总过大概花费了2个半小时左右就完成了。所以大家不要被吓尿了,下面就把安装的步骤及具体的版本记录了一下供大家参考。 安装步骤:    开发机环境:我使用的开发机:win7 旗舰版 – 64位 (cpu... »

优化Ruby脚本效率实例分享

profile.rb是为Ruby程序准备的profiler,它可以统计并输出各方法的运行时间,以便于找到程序执行的性能瓶颈。修改代码后重新执行分析命令,得到的结果是脚本运行时间从379395秒优化到2418秒,性能整整提升了156倍,达到2个数量级的效果。您可能感兴趣的文章:Ruby On Rails中如何避免N+1问题ruby开发vim插件小结分析Cache 在 Ruby China 里面的应用... »

Ruby简明教程之方法(Method)介绍

Ruby做为面向对象语言,肯定要对对象进行相关的操作,这时候就涉及到方法了。 调用方法 – 对象.方法名(实参1,实参2,…,实参n) 方法的分类: 1. 实例方法:顾名思义,就是由实例来调用的方法。例如,“10, 20, 30, 40”.split(“,”) 2. 类方法:就是由类来调用的方法。当创建一个实例时,则需要调用类方法。 代码如下: a ... »

ruby安装gem包失败的通用解决方法

有些gem表示明确不支持某个特定版本以前的ruby,而有些gem则与较高的版本不兼容。所以一般使用ruby程序时,对升级ruby版本或各种gem版本都是比较慎重的,避免一时手贱掉入坑中。比如想使用ruby或gem新版本的特性。当运行ruby脚本或者bundle install时,出错了首先一定要仔细看错误日志。然后安装新版本gcc。 »

Ruby 取得指定月日期数的方法

%C6%FC%C9%D5%A4%C8%BB%FE%B9%EF »

比较详细的ruby symbol 学习资料

解释的不错,应该明确了不少 ruby symbol详解 起因 最近在学习ruby on rails,的确是一个优秀的数据库开发框架。但在过程中,发现在视图文件夹中的rhtml文件里有大量的类似于以下的语句: <td><%= link_to recipe.title, :action =>&nbs... »

Page 1 of 20123»