概括、ruby程序由一個或多個ruby源文件組成,源文件由模塊組成,模塊內部有控制結構、類對象、方法、及表達式等元素,下面就按照這個思路來總結ruby的程序組織結構。
一、源文件
1.1、文件包含
代碼如下:
#file1.rb
inc_path=$0.sub(////w+/.rb/,"") #獲取當前路徑的目錄
$:.insert(-1,inc_path) #將當前路徑加入到load路徑數組
require "file2.rb"
require "file2.rb" #require包含文件只會被導入一次
load "file3.rb"
load "file3.rb" #每次load都會無條件再次導入文件
#file2.rb
print "file2.rb is included/n"
#file3.rb
print "file3 is included/n"
1.2、源文件執行順序
代碼如下:
#coding=utf-8
=begin
這里是
多行注釋
=end
END{print "end1/n"}
END{print "end2/n"}
#END塊的執行順序與出現順序相反
print "text/n"
BEGIN{print "begin1/n"}
BEGIN{print "begin2/n"}
#BEGIN塊的執行順序與出現順序相同
#BEGIN-TEXT-END
#__END__開頭的行后面的內容被忽略
__END__
print "no_text/n"
1.3、源文件書寫規則
◆大小寫敏感
◆換行符后只能有空白符,并且都會被忽略
◆類和模塊及常量名要以大寫字母開頭,變量以小寫字母或者unicode開頭
二、模塊
代碼如下:
#module1.rb
inc_path=$0.sub(////w+/.rb/,"") #獲取當前路徑的目錄
$:.insert(-1,inc_path) #將當前路徑加入到load路徑數組
require "module2.rb"
print Mymod::VAR1,"/n"
Mymod.out
include Mymod #把Mymod導入到當前名字空間
print VAR1
#module2.rb
print "module2.rb is included/n"
module Mymod
var1=99 #模塊內的變量
VAR1=100 #模塊內的常量
新聞熱點
疑難解答