分享Ruby应用技巧

开发 开发工具
Ruby语言需要我们不断的在实践中去深入的了解其含义。我们在这里为大家分享了几种Ruby应用技巧,希望能帮助大家提高编程能力。

学习一项编程语言最重要的就是实践操作,只有在实践中不断的积累经验才能充分掌握我们所学到的书本知识。Ruby语言的学习也不例外。下面就介绍几种Ruby应用技巧,供大家参考。#t#

Ruby应用技巧之语句定界符

有些语言需要一定类型的标点,一般会是分号(;)来结束程序的每一语句.Ruby却采用了shell里的sh和csh的方便做法.一行中的多个语句由分号分开,但在行尾分号却并不需要;一个换行被看作一个分号.如果行以反斜杠(\)结束,随后的换行将忽略;这就允许你的单个逻辑行可以跨越数行.

Ruby应用技巧之注释

为什么写注释?虽然良好的代码可自成文档,但那种自以为别人能看懂并按你的方式很快去理解的想法是错误的.除此之外,你自己在离开数天后也会是另一个人;一段时间后我们忘了我们还未修补或增强程序中的哪些部分,你会说,我知道我写了这个的,但我究竟写的是些什么?

一些有经验的程序员会相当正确地指出,矛盾的和过期的注释比没有强.当然,有了注释并不意味着代码的可读性;如果你的代码不清晰,它也许是多虫的.当你学习Ruby的时候,你会发现自己需要更多的注释;然后当你可以通过更简单,优雅,可读的代码来表达思想时,它们就会减少.

Ruby遵从一些普遍的书写习惯,用井号(#)表示注释的开始.跟在#号后面直到#号这行结束为止的代码都将被解释器忽略.
同时,为了方便写大块的注释, Ruby解释器省略以"=begin"和"=end"开始的行中间的一切.

#!/usr/bin/env ruby   
=begin   
****************************************  
This is a comment block, 
something you write for 
the benefit of   
human readers (including 
yourself). The interpreter ignores it.   
There is no need for a 
'#' at the start of every line.   
***************************************    =end  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

Ruby应用技巧之组织你的代码

Ruby读到什么就处理什么.没有编译处理;如果有什么还没读到,就被简单地认为未定义.

# this results in an
 "undefined method" error:   
print successor(3),"\n"    def successor(x)    x + 1    end  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

这并不是像一开始认为的那样,强迫你以从上至下的方式组织你的代码.只要你确保其在调用前将被定义,当解释器遇到一个方法定义时,它能安全地接受暂未定义的引用.

# Conversion of fahrenheit 
to celsius, broken   
# down into two steps.    def f_to_c(f)    scale(f - 32.0) # This is a 
forward reference, but it's okay.   
end    def scale(x)    x * 5.0 / 9.0    end    printf "%.1f is a comfortable 
temperature.\n", f_to_c(72.3)  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

所以,一方面看起来比使用Perl或Java要稍稍不方便一些,但却没有写C那么严格(要求你永远维持所指的部分排序).将***层的代码放在源文件的***总是可行的.即使这样也比看见时要好的多.一个明智而无痛苦的好办法是将main定义在文件顶端,再在底端调用它.

#!/usr/bin/env ruby   
def main   
# Express the top level logic here...   
end   
# ... put support code here,
 organized as you see fit ...   
main # ... and start execution here.  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

Ruby也提供了将复杂程序分割为可读,可重用,逻辑相关的大块的工具.我们已看到用 include 来访问模块.你将发现 load 和 require 也很有用.load的作用类似于文件的复制加粘贴(和C的#include处理器指令相似).require更复杂,仅在需要时才加载,而且最多加载一次.load和require还有其它一些区别;在语言手册,FAQ中可找到更多信息.
就是这些了...

这个Ruby应用技巧教程应该足够帮助你开始编写Ruby程序了.随着问题的深入,你可以深入参考手册.FAQ和库参考也是很重要的资源.

责任编辑:曹凯 来源: jb51.net
相关推荐

2009-12-18 10:47:16

Ruby装饰模式

2009-12-15 18:15:24

Ruby连接到LDAP

2009-12-15 18:24:02

Ruby连接到orac

2009-12-18 14:10:29

Ruby访问剪贴板

2009-12-17 10:18:17

Ruby创建构造器

2009-12-16 11:04:51

Ruby操作文件权限

2009-12-16 10:10:16

Ruby打开关闭文件

2009-12-15 14:51:50

Ruby继承

2009-12-17 17:37:42

Ruby on Rai

2009-12-16 15:46:41

Ruby on rai

2009-12-16 10:49:42

Ruby操作二进制文件

2009-12-15 09:56:51

Ruby流程控制

2009-12-29 17:56:47

Silverlight

2009-12-30 18:23:13

Silverlight

2010-01-25 11:09:58

Android Htt

2010-02-01 11:13:00

C++ Traits

2009-12-29 16:08:41

Silverlight

2010-01-25 16:08:37

Android ADB

2010-03-01 13:06:49

WCF继承

2009-12-31 17:00:40

Silverlight
点赞
收藏

51CTO技术栈公众号