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 則 被 設 計 至 適 合 一 般 人 都 可 以 較 容 學 曉 。
由 於 多 間 軟 件 商 包 括 Netscape 、 Borland、 IBM 及 Microsoft 都 已 和 Sun 達 成 協 議 , 將 為 Java 發 展 工 具 , 所 以 其 前 景 非 常 樂 觀 。 而 JavaScript 因 還 在 開 發 階 段 , 又 要 面 對 VB Script 的 競 爭 , 普 及 與 否 則 還 要 視 乎 Netscape 及 Microsoft 的 競 爭 結 果 。
如 有 錯 漏 , 望 高 人 指 教 。
|
|