我一直運行在對MacRuby的引用上,並想知道你們中的任何人是否已經將它用於iPhone/Objective C編程。MacRuby有什麼好處/限制,有人用它來爲iPhone編程?
MacRuby網站表示,「MacRuby的目標是讓MacRuby能夠創建完整的Mac OS X應用程序,這些應用程序不會犧牲性能以享受使用Ruby的好處。」
所以,我的問題是:什麼是紅寶石的好處是什麼?
而且,更重要的是,有什麼限制?
我一直運行在對MacRuby的引用上,並想知道你們中的任何人是否已經將它用於iPhone/Objective C編程。MacRuby有什麼好處/限制,有人用它來爲iPhone編程?
MacRuby網站表示,「MacRuby的目標是讓MacRuby能夠創建完整的Mac OS X應用程序,這些應用程序不會犧牲性能以享受使用Ruby的好處。」
所以,我的問題是:什麼是紅寶石的好處是什麼?
而且,更重要的是,有什麼限制?
我沒有用的MacRuby,但我懷疑它是否可用於iPhone的發展,因爲它是建立在Mac OS X的Objective-C運行的頂部,並使用Objective-C的2.0垃圾收集器(而不是使用它自己的)。雖然iPhone OS具有的Objective-C 2.0,它缺少垃圾收集器(你還是要用retain
/release
式的管理內存),所以我希望的MacRuby是行不通的開箱即用。
另外,MacRuby的將不是因爲使用口譯(比蘋果提供的除外)爲App Store開發有用的是禁止的。
Ruby的iPhone端口可能在越獄手機上工作,但該設備的RAM和CPU資源非常有限,所以我不確定這樣的端口會有多成功。我預計核磁共振成像速度太慢,並且渴望在iPhone上使用內存,但其中一種替代的Ruby解釋器可能運行良好 - 也許是擁有自己的GC的MacRuby。
我肯定可以看到有適用於Mac OS X開發的許多優點的MacRuby。這裏有一些東西關閉我的頭頂:
foo.bar('baz')
而不是foo.bar 'baz'
。.h
和.m
文件之間產生惱人的切割方法原型。 Ruby沒有。的MacRuby是真的很酷,但它仍然沒有投入生產(即使在OS X),也不會在iPhone上有幾個原因的工作:
隨着時間的推移,我預計這些問題中的一部分將會得到解決,而在未來的某個時間點,MacRuby將在iPhone上面上市,但這可能至少在幾年之後。如果您想要現在或可預見的將來爲iPhone開發,MacRuby不是一個現實的選擇。
紅寶石的好處是不那麼令人討厭的消息語法,可以非常容易閱讀和超過萬噸嵌套方括號和更大的活力型。缺點一般爲執行速度和方式Ruby用戶往往傾向於過度使用了比較模糊的元編程成語由此關連簡單的項目到猴子打補丁的意大利麪條。
你永遠不會來,除非蘋果決定解除限制,目前實行的無後臺流程在iPhone上運行,所以如果這一切你感興趣的,不要打擾。
LLVM?臂? JIT們?你介意爲我們中不那麼經驗豐富的程序員寫出你的首字母縮略詞嗎? 謝謝! – Jonah 2009-08-24 16:34:32
LLVM和ARM在技術上的縮寫,但他們是特別的東西(「低級別的虛擬機」及「橡果RISC機器」)。他們的專有名詞不能給你什麼特別的信息對他們做什麼,我打賭誰使用縮略語真的不知道他們代表的是什麼對大多數人來說,他們擴大可能使他們不太清楚,肯定讓他們少google-能夠。這就像寫「美利堅合衆國」,因爲人們可能不知道美國的含義。 – 2009-08-24 17:16:59