Java 與 JavaScript


Netscape Communication Corp. 出 Netscape Navigator 2.0 時 加 入 了 不 少 功 能 。 其 中 最 受 注 目 的 莫 過 於 支 援 Java 及 JavaScript , 但 由 於 它 們 的 名 字 太 相 似 , 以 至 有 不 少 人 把 它 們 混 淆 。 有 人 以 為 它 們 是 相 同 的 東 西 , 有 人 以 為 JavaScript 是 Java 的 簡 化 版 , 有 人 更 說 Java 分 Applet 及 Script 兩 種 。 其 實 它 們 是 兩 種 完 全 不 同 的 東 西 。

Java 是 徹 徹 底 底 的 一 套 程 式 語 言 , Sun 最 初 開 發 用 來 作 編 寫 家 庭 電 器 的 電 腦 程 序 之 用 。 由 於 其 輕 巧 、 跨 平 台 ( 即 是 可 以 在 任 何 有 Java Virtual Machine 的 平 台 包 括 MS-Win 、 Unix 、 OS/2 都 可 以 不 經 修 改 執 行 ) 及 安 全 ( Virtual Machine 可 以 監 察 軟 件 有 否 不 合 法 之 舉 行 如 刪 除 檔 案 等 ) 的 特 性 , 特 別 適 合 在 Internet 上 使 用 。

常 見 的 Java 程 式 一 般 分 為 Application 及 Applet 。 Application 是 單 獨 執 行 的 程 式 如 HotJava 瀏 覽 器 ( Sun 為 展 示 Java Applet 效 果 而 開 發 的 WWW 瀏 覽 器 ) , Applet 則 如 <IMG> 標 籤 連 結 在 HTML 檔 中 由 瀏 覽 器 來 執 行 。 兩 者 都 需 要 先 經 其 編 譯 器 ( Compiler ) 編 譯 ByteCode , 再 由 Java 的 直 譯 器 ( Interpter ) 或 可 執 行 Java 的 瀏 覽 器 ( Javaenabled Browser ) 上 跑 。 Applet 一 般 用 作 網 頁 上 產 生 動 畫 、 即 時 匯 報 股 票 行 情 、 應 用 軟 件 及 電 玩 等 , 以 取 代 或 分 擔 較 複 雜 的 CGI program 。

JavaScript 只 是 一 套 直 接 寫 在 HTML 檔 案 內 的 描 述 語 言 ( Script Language ), 其 前 身 為 LiveScript , 由 Netscape 開 發 作 為 HTML 與 網 內 其 他 物 體 如 Form 、 Frame 、 Java Applet 及 Plug-in 物 件 的 溝 通 及 處 理 其 相 關 事 件 ( Event ) , 同 類 競 爭 者 有 Microsoft 的 VBScript 。 同 樣 JavaScript 會 用 作 取 代 一 些 CGI program 的 工 作 , 但 多 是 一 些 較 簡 單 如 測 試 Form 的 值 是 否 正 確 及 控 制 一 些 網 頁 上 會 改 變 的 訊 息 。

由 於 Java 程 式 事 前 已 編 譯 成 Byte-Code , 所 以 其 的 執 行 速 度 會 比 JavaScript 快 但 比 C/C++ 慢 。 據 Dr. Dobb's Journal 所 說 , 在 SPARC 上 Java 約 比 C/C++ 慢 十 五 倍 。

Java 及 JavaScript 的 語 法 頗 相 似 , 但 Java 本 身 是 Object-oriented 、 Muli-threaded 及 Strong Typing 的 。 而 JavaScript 則 簡 化 了 Java 的 語 法 , 只 是 Object-based , 不 提 供 承 繼 ( inheritance ) 及 沒 有 類 別 ( Classes ) , Loose Typing 。 所 以 要 學 習 Java 需 要 較 高 編 程 經 驗 ( 相 對 地 JavaScript ) , 尤 其 是 對 Object-Oriented Programming 的 撐 握 。 JavaScript 則 被 設 計 至 適 合 一 般 人 都 可 以 較 容 學 曉 。

由 於 多 間 軟 件 商 包 括 NetscapeBorlandIBMMicrosoft 都 已 和 Sun 達 成 協 議 , 將 為 Java 發 展 工 具 , 所 以 其 前 景 非 常 樂 觀 。 而 JavaScript 因 還 在 開 發 階 段 , 又 要 面 對 VB Script 的 競 爭 , 普 及 與 否 則 還 要 視 乎 NetscapeMicrosoft 的 競 爭 結 果 。

如 有 錯 漏 , 望 高 人 指 教 。


參 考 文 件 :


Sign my Guest Book!!

Roy Xiao-yeung CHEN xychen@mailhost.net
Goto the Tokyo GeoCities

Background by BAX Background Generator and Custom Textures. Icons, Button and Horizontal Bar by Bandy's Icon and Image Bazaar, PixelSite, Ender's Realm Graphics and QBullet Legend

[GeoCities] [HTML 3.2] [Free Speech Now]

Last Updated: Jul 31, 1996