Re: [問題] VM 的問題

看板Programming作者 (huggie)時間18年前 (2007/05/31 02:08), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串11/14 (看更多)
※ 引述《gw.bbs@bbs.cis.nctu.edu.tw (walter)》之銘言: : 騎腳踏車出門,有個獨木橋要過,只好把腳踏車扛在肩上過河。 : 那腳踏車到底是拿來扛的還是拿來騎的?我還是認為腳踏車是 : 拿來騎的。 : Java 的原意是"write once, run everywhere" 在這想法下, : 必須要 compile 成 byte code, 然後在 VM 透過一個 engine : 去跑 byte code。我們寫出來的 Java 程式就可以透過網路送 : 到任何有 Java VM 的機器跑。這樣的用法如果硬是 compile : 成 machine code 就無法達成。 我本身不懂 Java 所以不是很清楚 請問什麼情況會需要透過網路送 bytecode 到遠端跑? 你的意思應該不是指說比方說我把程式用 MSN 傳給同學讓他跑這種情況吧? 如果是這樣我把 source code 送給他 compile 或者假設有編譯器可以邊另外一個平台的 binary 再寄給他就可行了 : 如果只是用於特定的 case, compile 成 machine code 是可 : 行的。不過 Java 的原意還是"write once, run everywhere"。 : 在 VM 下跑才能享受到 Java 跟其他語言的不同。 跨平台..只要 compiler 支援相同語法,不是只要用同一份 source code compile 成不同 machine code 對於程式設計師而言,不就可以跨平台了嗎? 而且這樣也不需要 VM 這個 middleware 來消耗效能 還是說有什麼 feature 沒辦法這樣子跨,譬如 thread 或者是低階的 signal 等? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.77.13
文章代碼(AID): #16NRsku- (Programming)
討論串 (同標題文章)
文章代碼(AID): #16NRsku- (Programming)