2012-04-20 18:14 | 16921次閱讀 | 來源:CSDN綜合 【已有33條評(píng)論】發(fā)表評(píng)論
Lua 指尖跳舞
大家都知道iOS的母語是Objective-C,她誕生了超過50萬款的應(yīng)用,為App Store和開發(fā)者創(chuàng)造了大量的價(jià)值。但是正如這個(gè)世界有航母,同時(shí)也有護(hù)衛(wèi)艦一樣,有時(shí)候我們只是希望能夠快速的添加一些擴(kuò)展以及定制功能,這個(gè)時(shí)候使用Objective-C就可能會(huì)有大炮打小鳥的感覺。于是一些開發(fā)者轉(zhuǎn)而去需求輕量級(jí)的替代方案,比較知名的如移動(dòng)開發(fā)新寵:Lua語言,已經(jīng)在以《魔獸世界》為代表的網(wǎng)絡(luò)游戲中,包攬了幾乎所有的插件,核心的C++代碼只占全部代碼中的很小一部分比重。
Lua的設(shè)計(jì)初衷并非意圖構(gòu)建完整的應(yīng)用,而是嵌入在應(yīng)用程序中為應(yīng)用提供靈活的擴(kuò)展和定制功能。所以Lua僅提供了基本的數(shù)學(xué)運(yùn)算和字符串處理等函數(shù)庫,在語言兼容性上,Lua一開始就瞄準(zhǔn)了具有廣泛應(yīng)用場(chǎng)景的C和C++,讓C/C++編寫的代碼可以很方便地調(diào)用Lua腳本,同時(shí)C/C++函數(shù)也能夠在Lua腳本中調(diào)用。與C/C++代碼的良好交互性,讓Lua在應(yīng)用程序開發(fā)中有著廣泛的應(yīng)用基礎(chǔ)。
Ruby 輕盈移動(dòng)
同Lua不同,Ruby誕生于1993年,那個(gè)時(shí)候甚至連傳統(tǒng)互聯(lián)網(wǎng)都不是“那么”的普及。Ruby的理念是:
減少編程時(shí)候的不必要的瑣碎時(shí)間,令編寫程序的人高興,是設(shè)計(jì)Ruby語言的Matz的一個(gè)首要的考慮;其次是良好的界面設(shè)計(jì)。他強(qiáng)調(diào)系統(tǒng)設(shè)計(jì)必須強(qiáng)調(diào)人性化,而不是一味從機(jī)器的角度設(shè)想。
via 維基百科
這正契合了移動(dòng)開發(fā)的特點(diǎn):人性化、輕量級(jí)、快速開發(fā)。在Ruby的基礎(chǔ)上,Matz開發(fā)了mruby,并在2012年4月20日進(jìn)行發(fā)布。根據(jù)作者官方介紹:mruby是一款輕量級(jí)的Ruby實(shí)現(xiàn),遵循ISO標(biāo)準(zhǔn)。它可以以解釋的形式或者在VM上編譯和執(zhí)行形式運(yùn)行。
圖片來源:bounceweb
MobiRuby 取代Objective-C的野心
前面鋪墊了這么多,現(xiàn)在我們?cè)賮碚凪obiRuby就輕松多了。MobiRuby脫胎自mruby,類似于Lua、mruby,可以在幾乎任何設(shè)備上運(yùn)行,對(duì)語言進(jìn)行了精簡(jiǎn),試圖使得編程更加快速和簡(jiǎn)單。但是比起前輩來,卻更加野心勃勃。作者宣稱MobiRuby的目的就是:在移動(dòng)平臺(tái)上取代Objetive-C/C/Java。MobiRuby并非像Ruby那樣基于GPL協(xié)議和Ruby License,而是采用了更加寬松的Apache License 2.0,之前Android閉源事件的討論中,CSDN也特別對(duì)這兩個(gè)協(xié)議之間的區(qū)別進(jìn)行了簡(jiǎn)單的闡述。
世界正在變得越來越平,和輕
世界已經(jīng)平的像一塊手機(jī)屏幕了,而很多人還妄圖讓它變得更輕,來看一段實(shí)例代碼,我們就能體會(huì)出MobiRuby到底有多輕了:
UIAlertView
- class NSString < Mobi::Cocoa::Object
- end
- class UIAlertView < Mobi::Cocoa::Object
- end
- def _S(str)
- NSString._stringWithUTF8String str
- end
- alert = UIAlertView._alloc \
- ._initWithTitle _S("Hello"),
- :message, _S("I'm MobiRuby"),
- :delegate, nil,
- :cancelButtonTitle, _S("I know!"),
- :otherButtonTitles, nil
- alert._show
移動(dòng)改變了我們的生活,也改變了很多人看待事物的眼光。正如The Art Of Unix Programming一書中所說:簡(jiǎn)單就是美。因?yàn)槲覀兊纳钫谧兊迷絹碓綇?fù)雜,我們的精力正在經(jīng)受越來越嚴(yán)酷的壓力,時(shí)刻準(zhǔn)備著大量的事情迎面砸來,所以很多時(shí)候”如何能夠簡(jiǎn)化步驟完成任務(wù)“,遠(yuǎn)比重量級(jí)、功能全面更加實(shí)用。
聯(lián)系客服