国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java伴侶

2019-11-18 14:23:19
字體:
來源:轉載
供稿:網友

  作 者:程 虎 (中國科學院軟件所)

--------------------------------------------------------------------------------

一、 序 言
java 自1995 年5 月 問 世, 立 即 成 為 計 算 界 最 受 關 注 的 焦 點 之 一, 它 實 現 了 計 算 機 界 多 年 的 夢 想, 即" 寫 一 次 程 序, 到 處 能 運 行"。 雖 然 這 一 夢 想 還 未100% 實 現, 但 在 國 際 互 聯 網 上,Java 小 程 序(Java Applet) 的 無 處 不 在 及 其 誘 人 的" 魅 力", 無 疑 使 計 算 機 界 看 到 了 希 望 的 曙 光。

國 外 的 計 算 機 廠 商 瞄 準 這 一 契 機, 紛 紛 轉 向Java, 爭 相 推 出 自 己 的 相 應 產 品。 國 內 的 廠 商 及 科 研 機 構 也 不 甘 落 后, 積 極 開 展Java 的 應 用 開 發 與 研 究 工 作。

目 前 市 場 上 的Java 開 發 工 具 功 能 雖 然 齊 全, 但 都 不 具 備 中 文 化 工 具, 國 內 用 戶 使 用 不 便。 為 此, 我 們 立 足 于 國 內, 本 著 簡 單、 實 用 的 原 則 開 發 出 一 些 適 合 國 內 用 戶 急 需 的Java 實 用 程 序, 總 稱 為Java 伴 侶(Java-Mate, 簡 稱J-M)。"Java 伴 侶" 是 國 家" 九 五" 科 技 攻 關 項 目" 國 產 開 放 式 系 統 軟 件 平 臺"(COSA) 的 專 題 之 一。

Java 伴 侶 全 部 用Java 語 言 編 寫, 其 部 分 軟 件 已 經 過 了 用 戶 的 跨 平 臺 試 用。 該 軟 件 的 界 面 全 部 為 中 文 界 面, 有 的 提 供 中、 英 文 兩 個 版 本,Java 伴 侶 可 指 導 用 戶 編 程, 提 供 中 文 編 譯、 解 釋 信 息, 自 動 實 現 與C/C++ 函 數 庫 的 接 口 及 圖 形 用 戶 界 面, 擴 充 了Java 類 庫。 目 前, 市 場 上 還 未 有 同 類 產 品。

現 階 段Java 伴 侶 包 括 下 列 四 個 軟 件:
(1) 中 文 化Java 編 譯 器 和 解 釋 器
(2)Java 語 言 結 構 化 編 輯 器
(3)Java 語 言 與C/C++ 語 言 接 口
(4)Java 圖 形 界 面 可 視 化 自 動 編 程 器

二、 中 文 化Java 編 譯 器 和 解 釋 器
該 工 具 的 目 標 是 使Java 能 夠 正 確 處 理 漢 字。 主 要 有 以 下 功 能:

(1) 該 軟 件 提 供 了 一 個 較 簡 單 的 文 本 編 輯 器, 能 夠 實 現 含 有 漢 字 的Java 源 程 序 的 編 輯, 并 具 有 新 建、 打 開、 存 儲Java 源 文 件 的 功 能。

(2) 能 夠 編 譯、 運 行Java 源 程 序。

(3) 能 夠 正 確 處 理 含 有 漢 字 字 符 串、 漢 字 注 釋 的Java 源 程 序, 以 及 漢 字 字 符 串 的 輸 入、 輸 出。

(4) 編 譯 源 程 序 時 給 出 的 編 譯 信 息 可 采 用 英 文 或 中 文 的 顯 示 形 式, 兩 種 顯 示 形 式 可 通 過 按 鈕 切 換。 給 出 編 譯 出 錯 信 息 時, 同 時 給 出 了 出 錯 的 行 號 和 出 錯 位 置。

(5) 解 釋 字 節 碼 文 件 時 給 出 的 解 釋 信 息 可 采 用 英 文 或 中 文 的 顯 示 形 式, 兩 種 顯 示 形 式 可 通 過 按 鈕 切 換。

(6) 提 供 了 使 用 說 明, 幫 助 用 戶 掌 握 軟 件 的 使 用。 還 給 出 了 關 于 軟 件 版 本 的 信 息。

編 譯 器 編 譯 信 息 的 漢 化, 采 用 替 換 的 方 法 完 成, 即 將 原 來 編 譯 器 中 的 西 文 信 息, 通 過 正 確 的 翻 譯, 用 漢 語 代 替。 為 進 一 步 增 強 功 能, 將 此 軟 件 設 計 成 中、 英 文 編 譯 信 息 可 切 換 的 方 式, 用 戶 可 以 根 據 自 己 的 需 要 在 編 譯 信 息 的 中 文 形 式 和 英 文 形 式 之 間 進 行 切 換。

解 釋 器 解 釋 信 息 的 漢 化, 采 用 轉 換 的 方 法 完 成, 即 將 解 釋 過 程 產 生 的 解 釋 信 息 截 取 過 來, 通 過 轉 換 程 序 轉 換 為 相 應 的 中 文 解 釋 信 息 后 再 輸 出 到 顯 示 器。 該 軟 件 也 設 計 成 中、 英 文 解 釋 信 息 可 切 換 的 方 式。

由 于 編 譯 信 息 的 漢 化 是 采 用" 替 換" 方 法 完 成 的, 沒 有 對 原 編 譯 器 進 行 改 動; 而 解 釋 信 息 的 漢 化 是 采 用 轉 換 的 方 法 完 成 的, 也 沒 有 對 原 解 釋 器 進 行 改 動, 因 此 不 影 響Java 編 譯 后 的 字 節 碼 通 過 國 際 互 聯 網 與Web 傳 輸 至 各 種 異 質 平 臺 或 不 同 的 操 作 系 統 中 執 行, 即 不 影 響Java 原 有 的 可 移 植 性 及 全 部 語 言 功 能。 中 文 化Java 與 西 文Java 在 功 能 上 完 全 兼 容, 性 能 一 致, 并 且 增 加 了 漢 字 處 理 能 力, 因 此 用 戶 使 用 更 方 便。

由 于 本 軟 件 全 部 采 用Java 語 言 編 寫, 因 此 軟 件 的 可 移 植 性 好。 而 且 在 研 制 開 發 軟 件 的 過 程 中, 為 軟 件 建 立 了 齊 全 的 文 檔, 并 對 源 程 序 進 行 了 適 當 的 注 釋, 因 此 便 于 維 護。

本 軟 件 的 菜 單 條 由 文 件、 編 譯、 運 行、 幫 助 四 部 分 組 成。

(1) 文 件 菜 單 文 件 菜 單 負 責 文 件 的 讀、 寫、 裝 入 等 文 件 操 作。

(2) 編 譯 菜 單 編 譯: 編 譯 當 前 窗 口 文 件, 此 時 文 件 應 已 存 盤。 選 擇 編 譯 菜 單 時, 會 彈 出 編 譯 器 窗 口, 輸 入 當 前 窗 口 文 件 的 目 錄, 編 譯 后 將 編 譯 信 息 顯 示 在 編 譯 信 息 窗 口 中, 選 擇 編 譯 信 息 窗 口 中 的 中 文 或 英 文 按 鈕 以 選 擇 相 應 的 編 譯 信 息 顯 示 形 式。

(3) 運 行 菜 單 運 行: 解 釋 當 前 窗 口 文 件 的 字 節 碼 文 件, 選 擇 運 行 菜 單 時, 會 彈 出 解 釋 器 窗 口, 輸 入 當 前 窗 口 文 件 的 目 錄, 解 釋 后 將 解 釋 信 息 顯 示 在 解 釋 信 息 窗 口 中, 選 擇 解 釋 信 息 窗 口 中 的 中 文 或 英 文 按 鈕 以 選 擇 相 應 的 解 釋 信 息 顯 示 形 式。

(4) 幫 助 菜 單 提 供 軟 件 的 名 稱、 版 本 信 息、 版 權 所 屬, 及 使 用 手 冊。

三、Java 結 構 編 輯 器
Java 結 構 編 譯 器 是"Java 伴 侶" 的 工 具 之 一, 目 的 是 向 國 內 用 戶 提 供Java 程 序 的 編 輯 工 具。Java 結 構 編 輯 器(JavaSed) 是 面 向Java 程 序 設 計 語 言 的 語 法 引 導 編 輯 系 統。JavaSed 使 用 戶 在 編 程 時 得 到 提 示 和 引 導, 因 而 避 免 錯 誤 操 作 和 產 生 語 法 錯 誤。

Java 結 構 編 輯 器 全 部 為 中 文 圖 形 用 戶 界 面, 支 持 多 窗 口 管 理, 更 適 合 國 內 用 戶 使 用。 該 軟 件 全 部 用Java 語 言 編 寫, 可 跨 平 臺 運 行, 目 前, 已 通 過 跨 平 臺 測 試, 運 行 正 常。JavaSed 有 中 英 文 兩 個 版 本, 用 戶 可 根 據 需 要 進 行 選 擇。

JavaSed 中, 程 序 的 語 法 樹 是Java 程 序 的 唯 一 內 部 表 示, 用 戶 的 所 有 編 輯 操 作 都 在 該 語 法 樹 上 進 行。 在 程 序 的 語 法 樹 中 包 含 了 構 成Java 程 序 的 各 種 語 法 成 分, 如<類 定 義>、<接 口 定 義>、<語 句> 等, 以 及 語 法 成 分 之 間 的 信 息。 有 的 語 法 成 分 由 其 它 語 法 成 分 復 合 構 成, 表 達 式、 標 識 符 等 則 被 看 作 為 終 結 語 法 成 分, 稱 之 為 樹 葉。JavaSed 由 模 板 驅 動, 模 板 庫 是 構 成Java 程 序 的 零 件 庫, 每 一 模 板 代 表 一 類 語 法 結 構, 用 以 說 明 該 語 法 的 組 成 成 分 及 組 成 方 式。 如:<語 句 體>==><空>(<語 句><語 句 體>。 程 序 初 建 時,Java 程 序 被 表 示 為 一 名 為<程 序> 的 語 法 樹 構 造, 展 開 之 得 到 如 下 語 法 樹, 進 一 步 展 開 語 法 樹 中 的 各 模 板 來 完 成Java 程 序 的 建 立, 對 樹 葉 則 采 用 直 接 輸 入 正 文 的 方 式 來 展 開, 以 減 少 展 開 層 次。



該 軟 件 的 主 界 面 主 要 包 括 四 部 分:

(1) 菜 單 條: 包 括 文 件 菜 單、 編 輯 菜 單、 工 作 菜 單、 幫 助 菜 單。 文 件 菜 單 提 供 各 種 文 件 管 理 功 能; 編 輯 菜 單 提 供 常 用 的 結 構 及 文 本 編 輯 操 作; 工 作 菜 單 負 責 程 序 的 編 譯 及 解 釋; 幫 助 菜 單 提 供 用 戶 手 冊。

(2) 模 板 選 擇 按 鈕: 包 括 各 種 語 句 模 板, 用 戶 可 根 據 需 要 進 行 選 擇。

(3) 狀 態 條: 顯 示 當 前 光 標 所 在 位 置 及 編 輯 狀 態。

(4) 當 前 模 板 操 作 菜 單: 包 括 前 插、 后 插 模 板 及 注 釋, 切 換 編 輯 狀 態 等 菜 單 選 項。

JavaSed 提 供 文 本 塊 操 作 功 能, 在 結 構 編 輯 狀 態 下, 以 語 法 成 分 為 單 位 進 行 結 構 化 的 塊 復 制、 粘 貼、 刪 除。 在 文 本 編 輯 狀 態 下, 以 字 符 為 單 位 進 行 文 本 塊 的 復 制、 粘 貼、 刪 除。 進 行 文 本 塊 的 選 擇 及 粘 貼 時, 軟 件 自 動 進 行 結 構 化 檢 查, 禁 止 非 法 選 擇 及 粘 貼。

JavaSed 提 供 字 符 的 匹 配 與 替 換 等 功 能。

JavaSed 為 方 便 用 戶 編 輯 操 作 提 供 編 輯 功 能 鍵。 模 板 顯 示 時 自 動 縮 進, 關 鍵 字、 模 板 及 用 戶 輸 入 以 不 同 顏 色 標 識。JavaSed 為 全 屏 幕 編 輯, 支 持 鼠 標 及 光 標 的 任 意 游 動。

文 件 管 理 功 能 提 供 文 件 的 建 立、 保 存、 另 存、 讀 入。

工 作 菜 單 負 責 編 譯, 解 釋 源 程 序。 目 前, 還 未 自 行 開 發 和 設 計Java 編 譯 器 和 解 釋 器, 該 功 能 直 接 調 用 其 它 廠 家 的 編 譯 器 和 解 釋 器, 之 后 將 編 譯 和 解 釋 的 錯 誤 信 息 顯 示 在 輸 出 窗 口 內, 使 用 前 需 設 置 好 編 譯 及 解 釋 的 運 行 參 數。

幫 助 菜 單 提 供Java 結 構 編 輯 器 的 使 用 說 明 書 及 版 本 信 息。

四、Java 語 言 與C/C++ 語 言 的 接 口
目 前,Java 的 類 庫 功 能 比 較 簡 單, 與MFC 的 相 比 較, 文 檔 功 能、 文 件 管 理 等 方 面 的 類 較 少。Doc/View 軟 件 體 系 結 構 是MFC 類 庫 的 主 要 特 色。 文 檔 功 能、 文 件 管 理 及 相 應 的 控 件 很 完 備, 是MFC 的 精 華 之 所 在。 我 們 依 據 對MFC 功 能 和 結 構 的 分 析, 以 及 對C++ 和Java 的 語 法 比 較, 將MFC 的 一 部 分 類 庫, 包 括Cview、Cdocument、Cframe、CDocTemplate 的 功 能 移 植 到Java 類 庫 中。 并 依 據Visual C++ 中AppWizard 的 思 想 給 用 戶 提 供 一 個 快 速 的 應 用 程 序 生 成 器。

原 生 方 法 就 是Java 中 給 出 的 同 非Java 代 碼 的 接 口, 是Java 同 操 作 系 統 和 運 行 環 境 相 聯 系 的 機 制。SUN 公 司 是 使 用 底 層 操 作 系 統 的 動 態 連 接 能 力 來 實 現Java 與 原 生 方 的 接 口, 我 們 依 據Java 語 言 的 原 生 方 法 接 口 以 及 函 數 的 動 態 連 接 機 制, 給 用 戶 提 供 一 個 將C++ 編 寫 的 類 庫 及C 的 函 數 庫 自 動 復 用 于Java 語 言 的 接 口。 這 樣 避 免 了 源 代 碼 級 的 轉 化 而 可 以 將 以 前 基 于C/C++ 所 開 發 的 一 些 工 作 重 用 于Java 中。 在MFC 中, 文 檔 類CDocument 給 用 戶 文 檔 類 提 供 基 本 功 能, 支 持 對 文 檔 的 標 準 操 作 如: 建 立、 調 用 和 保 存。 視 窗 類CView 給 用 戶 定 義 的 視 窗 類 提 供 基 本 功 能; 視 窗 附 著 于 一 個 文 檔 并 充 當 文 檔 和 用 戶 的 中 介。 框 架 類 給 視 窗 界 定 一 塊 區 域,CDocTemplate 是 一 個 用 來 定 義 文 檔 模 板 功 能 的 抽 象 基 類。 它 用 來 定 義 三 種 類 之 間 的 關 系:

文 檔 類:CDocument

視 窗 類:CView, EditView

框 架 類: 單 文 檔CframeWnd
模 板 類 將 以 上 三 個 類 的 指 針 存 放 在CRuntimeClass, 它 在 文 檔 模 板 建 立 時 指 定 包 括 各 種 資 源 的 標 識 號: 如 菜 單、 圖 標 和 加 速 表。

CDocTemplate 不 能 被 直 接 使 用, 通 常 使 用 的 是:SingleDocTemplate, 也 可 以 是 自 定 義 的DocTemplate 的 子 類。 我 們 基 本 上 完 全 移 植 這 一 結 構。

依 據Java 語 言 的 原 生 方 法 接 口 以 及 函 數 的 動 態 連 接 機 制, 該 軟 件 給 用 戶 提 供 了 一 個 將C++ 編 寫 的 類 庫 及C 的 函 數 庫 自 動 復 用 于Java 語 言 的 接 口。 該 軟 件 可 自 動 生 成Java 源 文 件、C 源 文 件 及 頭 文 件, 使 用 戶 方 便 地 調 用 原 有 的C/C++ 函 數 庫。

五、Java 可 視 化 圖 形 界 面 自 動 編 程 器
Java 圖 形 界 面 是 基 于Java 語 言 中 的 抽 象 窗 口(AWT) 而 開 發 的 用 戶 圖 形 界 面。Java 圖 形 界 面 可 視 化 自 動 編 程 器, 是 針 對AWT 現 存 的 不 足 而 對 其 組 件API 的 不 靈 活 等 方 面 進 行 擴 充 的, 為 用 戶 進 行Java 圖 形 界 面 編 程 提 供 方 便, 達 到 所 見 即 所 得 的 目 的。

可 視 化 自 動 編 程 器 中, 圖 形 界 面 的 編 程 不 再 用 文 本 編 輯 器 逐 個 輸 入 字 符 來 實 現, 而 是 通 過 直 觀 的 圖 形 編 輯 器, 對 圖 形 組 件 進 行 選 擇、 編 輯 等 操 作, 設 計 出 所 需 的 圖 形 界 面, 然 后, 系 統 根 據 這 些 設 計 調 用 摸 板, 直 接 在 指 定 文 件 中 寫 出 圖 形 界 面 的 源 程 序。 這 就 代 替 了 手 工 直 接 輸 入 的 圖 形 界 面 編 程 方 式 大 大 地 提 高 了 編 程 效 率。

Java 圖 形 界 面 可 視 化 自 動 編 程 器 支 持 用 戶 在 本 編 程 器 的 編 輯 環 境 中 進 行 可 視 化 的 位 置 改 變、 編 輯、 刪 除、 按 鈕 大 小、 按 鈕、 選 擇 框、 寫 入 和 下 拉 菜 單 等 編 輯 操 作, 并 根 據 這 些 操 作 在 本 編 程 器 的 模 板 的 引 導 下 生 成 相 應 的Java 源 程 序。 系 統 提 供 的 模 板 可 支 持Java 語 言 比 較 常 用 的 圖 形 界 面 的 生 成, 包 括 下 拉 菜 單 和 各 種 對 話 框 等。 系 統 操 作 環 境 全 部 是 中 文, 可 更 好 地 支 持 中 文 化Java。

系 統 除 部 分 字 符 串 輸 入 外, 所 有 操 作 均 為 鼠 標 操 作, 為 用 戶 使 用 帶 來 方 便。

系 統 在 多 處 提 供 了 提 示 信 息 為 用 戶 的 順 利 操 作 提 供 便 利。

該 軟 件 有 以 下 主 要 功 能

(1) 文 件 和 幫 助

文 件: 該 部 分 完 成 文 件 的 打 開(OpenFileClass), 保 存 和 退 出。

幫 助: 該 部 分 提 供 系 統 操 作、 名 稱、 開 發 時 間 及 版 本 等 幫 助 信 息。

(2) 編 輯, 包 括 組 件 的 選 擇 與 操 作

組 件: 選 擇 組 件, 包 括" 寫 入 件"、" 輸 入 件"、" 按 鈕" 和" 下 拉 菜 單 件"( 字 體、 圖、 聲 和 顏 色 本 期 不 做)。

操 作: 完 成 組 件 的" 大 小"、" 刪 除"、" 拖 動"、" 顏 色" 等 的 操 作。

(3) 轉 換, 可 分 為 正 轉 換、 逆 轉 換 和 模 板

正 轉 換: 將 編 輯 結 果 轉 換 成Java 源 代 碼。

逆 轉 換: 將Java 源 代 碼 轉 換 成 圖 形 界 面 編 輯 環 境。

模 板: 為" 轉 換" 提 供 相 應 的 模 板, 源 程 序 文 件 名pattern.java。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建湖县| 东海县| 桓台县| 理塘县| 竹北市| 巫山县| 都昌县| 米林县| 乌鲁木齐县| 来宾市| 云阳县| 嵊州市| 鹤岗市| 高邮市| 鹿泉市| 乌鲁木齐县| 南丹县| 浮山县| 蒙自县| 乌拉特前旗| 山阴县| 博兴县| 且末县| 双城市| 沂源县| 宝应县| 瑞金市| 开封县| 资源县| 定西市| 盐城市| 阿巴嘎旗| 兴隆县| 阿拉尔市| 宁蒗| 厦门市| 炉霍县| 德钦县| 潮州市| 荔波县| 屏东市|