国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
MobiRuby的野心:用Ruby替代Objective

MobiRuby的野心:用Ruby替代Objective-C/C/Java

2012-04-20 18:14 | 16921次閱讀 | 來源:CSDN綜合 【已有33條評(píng)論】發(fā)表評(píng)論

關(guān)鍵詞:MobiRuby,mruby,ruby,lua | 作者:楊鵬飛 | 收藏這篇資訊

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

  1. class NSString < Mobi::Cocoa::Object
  2. end
  3.  
  4. class UIAlertView < Mobi::Cocoa::Object
  5. end
  6.  
  7. def _S(str)
  8. NSString._stringWithUTF8String str
  9. end
  10.  
  11. alert = UIAlertView._alloc \
  12. ._initWithTitle _S("Hello"),
  13. :message, _S("I'm MobiRuby"),
  14. :delegate, nil,
  15. :cancelButtonTitle, _S("I know!"),
  16. :otherButtonTitles, nil
  17. 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í)用。


本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
大規(guī)模的lua開發(fā)
關(guān)于腳本語言的評(píng)價(jià)--Python/Ruby/Perl/Lua
ruby系列教材(26):More about methods(3)
在iOS 8中使用UIAlertController
lua
Lua,一種強(qiáng)大的輕量級(jí)腳本語言
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服