Time of Update: 2018-12-06
學習Ruby時的一些牢騷 一不小心就開始學習Ruby了,跨了一個元旦,也算學了兩年了(其實也就沒幾天)。 總體來說,有點排斥,因為感覺不好。 以前學過一點VB,沒想到Ruby也是這種以“End”語句結束代碼塊的語言。這種方式也不是說有什麼不好,總體來說有點亂,黑乎乎的一行行全是代碼。而且語言很多地方設計的有點亂(或者說根本就沒有設計),文檔也不多(官方的Document亂七八糟——你說你弱類就弱了唄,幹嘛扯蛋的要以類型索引,有本事你比了JS)。 其實關於Ruby的書也不少,就是大多都是E
Time of Update: 2018-12-06
RUBY中對XML的文檔的解析可以使用這個庫REXML庫。REXML庫是ruby的一個XML工具包,是使用純Ruby語言編寫的,遵守XML1.0規範。在Ruby1.8版本及其以後,RUBY標準庫中將包含REXML。REXML庫的路徑是:
Time of Update: 2018-12-05
module A;endmodule B; include A;def hi; puts "Hello gays! enjoy Ruby! ";end; endclass C; include B; end$f = File.open("metaProgram.rb")$lines = $f.readlinesdef p(a,no)#$f.readline until $f.lineno == (no-1) #puts
Time of Update: 2018-12-05
$res = "__"def lamb(&lamb)3.times do puts $res=lamb.call end puts "-------at the end of lamb() : #{$res}"enddef lamb_test lamb { return puts " return in lamb() " } puts "--------at the lamb_test() end"enddef bl3.times do puts $
Time of Update: 2018-12-05
class Array def iterate!(&code) #注意這裡用了&符號 self.each_with_index do |n,i| self[i] = code.call(n) end endendarr = [1,2,3,4]arr.iterate! do |n| n ** 2end #[1, 4, 9,
Time of Update: 2018-12-05
今天又學了一會RUBY的閉包,主要是看《RUBY元編程(metapromgramming ruby)》一書:http://book.douban.com/subject/4086938/第三章閉包結尾的守關BOSS是一道題:編寫你的第一種領域專屬語言。event "the sky is falling" do @sky_height < 300endevent "It's getting closer" do @sky_height <
Time of Update: 2018-12-06
寫了個新增功能的指令碼,但此功能不允許增加同名記錄。咋辦? 初始化時把相關記錄刪除掉?如果對業務不熟悉,對錶結構不熟悉,主從表關係複雜,咋辦? 每次運行前手動改下驅動資料?麻煩! 想了個笨辦法。 先在excel驅動檔案裡加個事件:Private Sub Workbook_Activate()Sheet3.Cells(2, 6) = Sheet3.Cells(2, 6) + 1ThisWorkbook.SaveEnd Sub
Time of Update: 2018-12-06
一直以來ROR在國外不斷開花結果,在國內卻始終有些曲高和寡,除了JavaEye,我很少聽到國內ROR的成功故事。幾天在InfoQ中文網站上看到一則Jeff
Time of Update: 2018-12-06
ruby中的數組由方括弧建立,初始值可以放在方括弧中並用逗號分割,數組元素的類型可以不一樣,並且支援加法乘法運算。ary = [1, 2, "3"]ary * 2 返回 [1, 2, "3", 1, 2, "3"]ary + ["lee", "ho"] 返回[1, 2, "3", "lee", "ho"]ary[0,2] 返回[1, 2] 從位置0開始擷取兩個元素ary[0..2] 返回[1, 2, "3"] 從位置0一直到位置2數組支援<<運算
Time of Update: 2018-12-06
開始我的Ruby之旅,寫下學習筆記,是針對那些有其他OO語言經驗的人寫的,可以來看下神奇的Ruby。第一個sample!
Time of Update: 2018-12-06
剛剛在音樂空間裡發了幾首歌 敲了幾句ruby代碼 刷刷人氣
Time of Update: 2018-12-07
作者:於天恩 北京航天航空出版社出版發行。Ruby是一種語言,其單詞含義為“紅寶石”。Rails是一種技術架構,其單詞意思為“鐵軌”。於是“Ruby on
Time of Update: 2018-12-07
n=[1,2,3,nil,nil]p nn1=n.compactp n1n2=n.compact!p n2p n 主要是交流,水平有限,喜歡研究,多多包涵。 先說一個數組迴圈問題 arr=[1,2,3]n=arr << arrp n輸出: [1, 2, 3, [...]] 分析: << 傳進去的是一個arr指標 # =>[1,2,3,arr] 其實這是一個迴圈,真實的值是:[1,2,3,[1,2,3,[1,2,3,[1,2,3,........]]] arr[3]
Time of Update: 2018-12-07
class A def self.ask1 puts "the method of class" end def ask2 puts "the method of instance" endend#類的執行個體對象的方法,方法屬於類所產生New出來的執行個體對象。 p a.methods.length p a.class.instance_methods.length p A.instance_methods.length p
Time of Update: 2018-12-07
1.先看字串的object_idstr1="Anleb"str2="Anleb"puts str1.object_idputs str2.object_id輸出: 22952500 22952490 id不同說明,雖然對象的值一樣,但是他們是不同的東西,什麼是不同的東西,也就是指標不同。 str1指標----> 對象 str2指標----> 對象
Time of Update: 2018-12-07
viewview分為 builder模式和rhtml模式builder模式例子如下,rails內建xml.div(:class => "productlist") doxml.timestamp(Time.now)@products.each do |product|xml.product doxml.productname(product.title)xml.price(product.price, :currency =>
Time of Update: 2018-12-07
ruby資源http://rubygems.org gem資源的家園http://rubyforge.org/http://www.ruby-lang.org/en/ruby官方網站http://www.ruby-doc.org/ ruby doc and apiftp://ftp.ruby-lang.org/pub/ruby/ruby 版本ftphttp://www.kuqin.com/rubycndocument/index.htmlruby中文版參考手冊, FAQ特別有用http://
Time of Update: 2018-12-07
1. 建立HTTP串連(通過GET方式發送請求參數) require "open-uri" #如果有GET請求參數直接寫在URI地址中 uri = 'http://uri' html_response = nil open(uri) do |http| html_response = http.read end puts html_response 2. 通過POST發送請求參數 params = {}
Time of Update: 2018-12-07
Ruby簡介Ruby 是松本行弘93年開始編寫,95年發布的物件導向編程的指令碼語言,沒錯,作者是個日本程式員。雖然最近抑制日貨的呼聲高漲,但是在這裡我想引用松本行弘先生對程式開發的見解:程式開發本身是腦力勞動,本質其實是運動的一種,與國際象棋、圍棋等競賽類似。因此,我們要本著奧林匹克精神來對待我們的工作、看待我們的同行,我們所作的工作是在服務全人類,與政治無關。Ruby 的命名取自7月誕生石
Time of Update: 2018-12-07
當我們談到繼承,我們通常會分開為介面繼承和實現繼承。如果是單繼承,無論是實現繼承還是介面繼承,都容易理解和使用。即便如此,在C++的著作中,還是提到當我們在繼承一個類的時候,不僅僅要想到繼承了實現,還要想到一併繼承了介面。 多繼承更是複雜,很容易走到菱形繼承這樣一個怪圈。在C#中,只有介面的多繼承,並沒有實現的多繼承——我們不可以指定兩個或兩個以後的類作為父類。 Ruby中的Mixin是對多重實現繼承的一個實現,即實現部分以模組的方式單獨出來,模組有其特有的屬性,比如不能執行個體化,不能繼承別的