作者huggie (huggie)
站内Programming
标题Re: [问题] VM 的问题
时间Thu May 31 02:08:45 2007
※ 引述《[email protected] (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