這 是 我 們 家 電 的 世 界 , 一 切 都 很 好 : 每 項 產 品 , 用 戶 不 會 有 什 麼 奇 怪 問 題 , 因 為 都 是 熟 悉 的 操 作 。 除 了 常 聽 到 有 人 會 抱 怨 錄 影 機 的 預 約 錄 影 太 複 雜 ( 這 好 像 是 某 個 商 品 廣 告 訴 求 , 的 確 父 親 要 預 約 錄 影 就 要 我 幫 忙 ) , 但 基 本 上 仍 然 能 操 作 錄 影 機 看 帶 子 。
電 腦 程 式 語 言 是 發 揮 電 腦 能 力 的 根 本 , 顧 名 思 義 : 用 某 種 方 式 ( 語 言 ) , 安 排 電 腦 做 什 麼 ( 程 式 , program ) 。 在 過 去 有 許 多 理 由 、 原 因 , 只 有 專 家 才 瞭 解 語 言 , 才 能 動 手 寫 程 式 。 假 使 您 無 英 語 能 力 , 又 想 和 英 國 人 溝 通 , 就 會 需 要 一 位 翻 譯 。 上 面 所 謂 專 家 的 角 色 , 就 和 翻 譯 的 工 作 是 相 似 的 。 而 隔 語 言 如 隔 山 , 某 人 可 能 對 A 語 言 非 常 熟 悉 , B 語 言 卻 一 竅 不 通 , 導 致 無 法 發 揮 電 腦 某 項 能 力 。 人 的 世 界 是 這 樣 , 電 腦 世 界 發 生 這 種 事 也 沒 什 麼 特 別 。
直 到 近 年 來 , 人 們 漸 漸 重 視 應 用 日 常 生 活 簡 單 操 作 的 精 神 , 解 決 原 本 在 電 腦 世 界 中 複 雜 的 問 題 。
什 麼 是 『 簡 單 操 作 的 精 神 』 ?
拿 錄 放 影 機 來 說 : 您 知 道 它 的 功 能 ( 用 來 看 帶 子 , 錄 節 目 ) ; 您 知 道 要 怎 麼 操 作 它 就 能 執 行 某 項 功 能 ( Play , Record ) 。 您 不 需 要 知 道 為 什 麼 會 有 這 樣 的 功 能 ; 不 需 要 知 道 磁 性 訊 號 ( 錄 影 帶 ) 如 何 轉 為 電 子 訊 號 . . . 這 就 是 簡 單 操 作 的 精 神 。
對 您 來 說 , 錄 放 影 機 是 個 黑 盒 子 , 您 不 需 要 知 道 它 如 何 運 作 , 但 透 過 操 作 就 可 以 輕 易 的 使 用 。 這 個 黑 盒 子 以 電 腦 界 術 語 表 示 , 它 就 是 一 個 物 件 (Object) 。 這 個 物 件 提 供 某 種 方 法 (method) 讓 您 操 作 。 這 些 方 法 是 設 計 錄 放 影 機 工 程 師 份 內 的 事 , 例 如 Play 的 方 法 可 能 是 一 連 串 電 子 與 機 械 的 作 用 。
Java examples ...使 用 錄 放 影 機 來 看 帶 子 , 應 該 還 要 加 上 電 視 才 成 。 現 在 把 眼 光 拉 大 , 將 這 兩 個 物 件 ( 錄 放 影 機 、 電 視 ) 的 組 成 合 而 為 一 , 做 成 一 個 物 件 。 您 或 許 會 問 : 這 算 什 麼 ? 影 音 系 統 啊 !
Java examples ...看 這 種 影 音 設 備 的 型 錄 , 您 可 能 會 發 覺 , 一 個 包 含 錄 放 影 機 與 電 視 的 設 備 ( 物 件 ) 被 命 名 為 『 VA001 』 。 另 一 套 包 含 相 同 錄 放 影 機 、 電 視 , 外 加 一 音 響 的 組 合 被 稱 做 『 VA003 』 。 這 種 情 況 我 們 可 以 應 用 繼 承 (inheritance) 關 係 : 先 將 『 VA003 』 從 『 VA001 』 繼 承 , 再 追 加 一 音 響 即 可 。 可 能 您 會 質 疑 這 麼 做 能 有 什 麼 好 處 ? 我 們 可 以 看 看 電 腦 語 言 表 達 的 結 果 :
Java examples ...
public class HelloWorld extends java.applet.Applet {
public void paint(java.awt.Graphics g) {}g.drawString("Hello world!", 0, 10);} |
如 果 想 看 上 面 程 式 的 結 果 , 要 把 這 個 Applet 放 到 HTML 檔 中 , 請 按 這 裡 。
回 到