ruby on rails視頻教程編程語言從入門到精通全集128整電子學(xué)筆記_第1頁
ruby on rails視頻教程編程語言從入門到精通全集128整電子學(xué)筆記_第2頁
ruby on rails視頻教程編程語言從入門到精通全集128整電子學(xué)筆記_第3頁
ruby on rails視頻教程編程語言從入門到精通全集128整電子學(xué)筆記_第4頁
ruby on rails視頻教程編程語言從入門到精通全集128整電子學(xué)筆記_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、顏勇青ruby學(xué)習(xí)Ruby是一種簡單的面向?qū)ο缶幊陶Z言,十分容易上手,并且功能強(qiáng)大。她是一個日本的Yukihiro Matsumoto(大家都叫他Matz.)在1995年首次發(fā)布的。Ruby是面向?qū)ο蟮木幊陶Z言,她追求的是“簡便快捷的面向?qū)ο缶幊獭?。Ruby是解釋型語言,因此不需編譯即可快捷地編程。同時Ruby具有類似Perl的強(qiáng)大的文本處理功能,她可并不只是個玩具,您可以用她來進(jìn)行實(shí)用的編程。Ruby簡介解釋器Ruby是解釋型語言,其程序無需編譯即可輕松執(zhí)行。 變量無類型Ruby的變量沒有類型,因此不必為靜態(tài)的類型匹配而煩惱。相應(yīng)地,錯誤檢查功能也變?nèi)趿恕?不需要變量聲明所有變量均無需聲明即

2、可立即使用。另外,從變量名即可判斷出是何種變量(局部變量,全局變量,實(shí)例變量)。語法簡單語法比較簡單,類似Algol系語法。不需要內(nèi)存管理具有垃圾回收(Garbage Collect,GC)功能,能自動回收不再使用的對象。 一切都是對象Ruby從一開始就被設(shè)計成純粹的面向?qū)ο笳Z言,因此以整數(shù)等基本數(shù)據(jù)類型為首的所有東西都是對象,它們都有發(fā)送信息的統(tǒng)一接口。 類,繼承,方法 Ruby當(dāng)然具有面向?qū)ο笳Z言的基本功能。 特殊方法 可向某對象添加方法。例如,可以把GUI按鈕被按下時的動作作為方法記述下來,還可以用它來進(jìn)行原型庫(prototypebase)的面向?qū)ο缶幊蹋ㄓ腥诉@么干吧)。Ruby優(yōu)點(diǎn)用

3、模塊進(jìn)行混合插入(Mixin) Ruby故意舍棄了多重繼承,但擁有混合插入功能。使用模塊來超越類的界限來共享數(shù)據(jù)和方法等。迭代器 該功能可以將循環(huán)抽象化。 閉包 可以將某過程片段對象化。對象化后的該過程片段就稱作閉包。 功能強(qiáng)大的字符串操作正則表達(dá)式 以Perl為樣板創(chuàng)造出了功能強(qiáng)大的字符串操作和正則表達(dá)式檢索功能。 擁有超長整數(shù) 添加超長整數(shù)功能后,可以計算非常大的整數(shù)。例如計算400的階乘也輕而易舉。 具有錯誤處理功能 錯誤處理功能可以使您編寫代碼處理出錯情況。 可以直接訪問OS Ruby可以使用(UNIX的)絕大部分的系統(tǒng)調(diào)用。單獨(dú)使用Ruby也可以進(jìn)行系統(tǒng)編程。 動態(tài)加載 若OS支持的

4、話,可以在運(yùn)行時讀入對象文件。 Ruby優(yōu)點(diǎn) window 具體安裝:網(wǎng)站首頁 : 下載首頁: /en/downloads/ftp下載 : /pub/ruby/binaries/mswin32/Linux 具體安裝介紹: Ruby安裝經(jīng)典到爛的Hello World。比java省事很多 puts Hello World print(“請輸入你的名字:)name = gets()puts hello #name.upcase(1)print與puts的區(qū)別。print不換行,puts換行(2)在ruby里,你想什么時候使用變量就什么時候使用,不必要事先定義,ruby會自己判斷變量類型。(3)ru

5、by和java一樣是大小寫敏感的。(4)gets后的括號,和print,puts后的括號一樣,都是可選擇的,只要不引起誤解,都可以去掉。(不建議。)(5)#取變量值Ruby語法學(xué)習(xí)2.Ruby中的方法。使用def定義,后面跟方法名,要小寫。Ruby代碼 def saysomething puts(Hello) end 傳參數(shù)Ruby代碼def saysomething(name) puts(Hello #name) end 注釋:單行注釋:#號為注釋符號,相當(dāng)于java里的/ 多行注釋:=begin=endRuby語法學(xué)習(xí)Ruby的類定義,與java也類似,也以class 開頭,加類名 cla

6、ssMyClassendob=MyClass.new(1)在這個類里面,雖然什么都沒有定義,但是Ruby會自動的繼承Object類。所以,可以調(diào)用ob.class (2)類名的第一個字母必須大寫Ruby語法學(xué)習(xí)2.類實(shí)例和實(shí)例變量 :classDogdefset_name(name)dogname=nameenddefget_name(name)return dognameendenddog=Dog.newdog.set_name(Jack)putsdog.get_name(1)dogname此為實(shí)例變量,屬于Dog實(shí)例,不需要事先聲明 (2)如果不給dogname設(shè)值,即不先調(diào)用dog.se

7、t_name(Jack),而直接puts dog.get_name,不會像java那樣獲得空指針異常,返回一個nilRuby語法學(xué)習(xí)繼承,與java一樣,也是單繼承。 例如:classThingdefget_namereturnnameenddefset_name(aName)name=aNameendEndclassTreasure ThingEnd(1)繼承寫法如下class Treasure Thing (2)super( aName, aDescription )與java功能相同Ruby語法學(xué)習(xí)ruby中的array與java中的有區(qū)別。它可以在一個array里存放多種類型。 Rub

8、y代碼 a=hello,1.0,1puts(a0,a1)2.ruby可以數(shù)組越界。超出數(shù)組返回nil 3.ruby數(shù)組可以存放方法defhelloreturnhienda=hello,hello,1puts(a0,a1)Ruby語法學(xué)習(xí)4多維數(shù)組創(chuàng)建方法,先創(chuàng)建一個數(shù)組,再在該數(shù)組里添加數(shù)組。a=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,165,數(shù)組遍歷使用for.in.end,與java里的foreach循環(huán)很相似 a=one,two,three,four,1,2,3,4foriinaforjiniputsjendendRuby語法學(xué)習(xí)ruby里的hash應(yīng)該就

9、是java里的map了。創(chuàng)建方法:h1=Hash.newh2=Hash.new(hello)h1 = Hash.newh2 = Hash.new(hello)這兩個都創(chuàng)建了一個Hash,區(qū)別是: 在h1里如果找不到對應(yīng)的值則返回nil,h2則返回helloRuby語法學(xué)習(xí)1.for循環(huán),上面有用過,類似java的foreach循環(huán) Ruby代碼 foriin1,2,3doputsiendfor i in 1,2,3 do puts ienddo可省略 另一種寫法,有點(diǎn)陌生 Ruby代碼 1,2,3.eachdo|i|putsiendRuby語法學(xué)習(xí)while循環(huán),看代碼。 Ruby代碼 whi

10、letiredsleependsleepwhiletiredwhile tired sleep end sleep while tired 這兩段代碼效果相同。不是java里while與do.while的區(qū)別.如果要do.while的效果,要這么寫 Ruby代碼 beginputs(x)endwhile(x mysql, :host = 11, :username = yyq, :password = yyq, :database = amazon ) ActiveRecord:Base.connection.execute SET NAMES UTF8class CommentActiveR

11、ecord:BaseEnd類名對應(yīng)表Ruby語法學(xué)習(xí)查詢書的isbn條碼class Comment isbn = ?,name) return bookname != nil endEnd 拼sql語句查詢 def self.query_this_url(start,pagesize) sql = select id,url,fix from producturls limit #start,#pagesize mp3list = find_by_sql(sql) return mp3list endRuby語法學(xué)習(xí)抓點(diǎn)評內(nèi)容: 以點(diǎn)評這個為例: 拿下第一頁的10條點(diǎn)評require rubygemsrequire hpricotrequire open-uribeg

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論