VisualAge for Java使用技巧

类别:Java 点击:0 评论:0 推荐:
VisualAge for Java使用技巧

杨 旭 青

  IBM 的VisualAge for Java 是 一 个 功 能 强 大、 灵 活 的Java 编程 环 境, 本 文 介 绍 几 个 与 该 工 具 性 能 有 关 的 技 巧 与 秘诀。

从 仓 库 中 删 除 代 码

  VisualAge 在 一 个 数 据 库 中 存 储 了 所 有Java 源 程 序 代 码、 类 文 件、 可 视 设 计 信 息 和 项 目 优 先 选 择 设 置, 这 个 数 据 库 也 叫 做 仓 库。VisualAge 最 明 显 的 疏 漏 是 用 户 不 能 直 接 从 仓 库 中 删 除 代 码, 清 除 仓 库 的 唯 一 途 径 是 把 想 保 留 的 东 西 输 出, 并 把 输 出 文 件 作 为 仓 库 来 使 用。 在 下 面 的 过 程 中, 聪 明 的 用 户 可 以 成 功 地 把 仓 库 容 量 从36MB 减 少 到18MB, 显 著 提 高 系 统 性 能。

  仓 库 里 有 什 么 ? 仓 库 中 包 含 了Java 源 代 码、 类 文 件 和 可 视 设 计 信 息, 用 项 目(project) 和 包(package) 组 织 起 来,VisualAge for Java 中 的 包 就 是 由Java 语 言 规 范 定 义 的 包。 项 目 是VisualAge for Java 的 一 个 概 念, 这 个 概 念 为 开 发 与 传 输 的 方 便 将 代 码 编 成 组。VisualAge for Java 的 仓 库 中 包 含 下 列 项 目: Java 类 库 的 两 个 版 本: 一 个 是Presentation Manager(OS/2) 版, 另 一 个 是Win32(Windows95/NT) 版; 大 约4MB 的 范 例( 企 业 版 中 包 含 更 多 的 范 例); IBM UVM 类 库, 主 要 作 为 专 有 编 辑 器 用 于Visual Composition 编 辑 器 中; 任 何 使 用 者 已 经 添 加 的 项 目。

  为 了 用VisualAge for Java 开 发 应 用 软 件 和Java applet, 仓 库(repository) 与 工 作 空 间(workspace) 必 须 包 含 下 述 项 目: 平 台 所 使 用 的Java 类 库 版 本; “Sun Class Libraries WIN32”for Windows 95/NT; IBM UVM 类 库; EAB 项 目( 仅 限 于VisualAge for Java 企 业 版); 在 使 用VisualAge for Java 时, 任 何 用 户 计 划 引 证 或 修 改 的 代 码。

  清 除 仓 库 的 过 程 如 下( 注 意: 在 执 行 以 下 过 程 之 前, 一 定 要 先 备 份 仓 库 和 工 作 空 间 文 件, 以 防 出 现 不 测 时 恢 复):

  1. 对 仓 库 和 工 作 空 间 文 件 做 备 份。 如 果 已 经 将 VisualAge for Java 安 装 到c:\IBMVJava\, 那 么 这 些 文 件 位 于c:\ IBMVJava\ide\repository\ivj.dat 和c:\ IBMVJava\ide\program\ide.icx。

  2. 转 换 当 前 工 作 空 间 中 的 所 有 项 目 版 本, 可 以 对 工 作 空 间 中 的 一 个 项 目 从 弹 出 菜 单 中 选 择“Version” 来 实 现。

  3. 确 保 只 有 自 己 想 保 留 的 项 目 在 工 作 空 间 中, 删 除 任 何 不 需 要 的 项 目。 如 果 在Windows 上 运 行VisualAge for Java , 不 要 包 括Presentation Manager Java 类 库; 如 果 在OS/2 上 运 行, 不 要 包 括Win32 Java 类 库; 需 要 的 话, 可 以 从 仓 库 中 添 加 上。

  4. 用Interchange 格 式 将JDK、BDK 和IBM 范 例 以 交 换 格 式 输 出 到 一 个 叫 做samples.dat 文 件 中, 以 备 将 来 再 用。 为 了 完 成 这 一 输 出, 需 要 在 工 作 空 间 中 选 择 这 些 项 目, 然 后 从 文 件 菜 单 中 选 择“Export”。 输 出 时, 一 定 要 选 择 “Interchange format”。 建 议 将 这 些 文 件 保 存 在c:\ IBMVJava\ide\repository 子 目 录 下 一 个 名 为samples.dat 的 文 件 中。 注 意 输 出 过 程 只 保 留 所 输 出 代 码 的 最 新 版, 新 的 仓 库 将 不 包 含 较 早 的 版 本。 如 果 要 把 老 仓 库 作 为 老 版 本 的 存 档 文 件, 可 以 从 该 存 档 文 件 中 输 入, 就 像 对 其 他 交 换 文 件 一 样。

  5. 从 工 作 空 间 删 除JDK、BDK 和IBM 范 例 项 目。

  6. 将 希 望 保 留 的 所 有 项 目 输 出 到 另 一 个 交 换 文 件 中, 建 议 在 同 一 个 仓 库 目 录 下 使 用core.dat 这 个 名 字。 ---- 7. 确 保 工 作 空 间 中 的 项 目 就 是 输 出 到core.dat 中 的 项 目, 在 清 除 过 程 完 成 以 前 不 要 编 辑 工 作 空 间 里 的 任 何 文 件, 否 则, 仓 库 和 工 作 空 间 可 能 会 产 生 一 致 性 方 面 的 问 题。

  8. 退 出VisualAge for Java。

  9. 进 入c:\ IBMVJava\ide\repository 目 录( 或 相 应 的 安 装 地 方)。

  10. 将ivj.dat 更 名 为ivj.old, 保 存 这 个 文 件, 直 到 确 信 清 除 工 作 成 功。

  11. 将core.dat 更 名 为ivj.dat。 ---- 现 在, 我 们 已 经 从VisualAge for Java 仓 库 中 清 除 了 不 想 要 的 项 目。 这 时 再 进 入VisualAge for Java, 我 们 将 只 能 看 到 在core.dat 中 的 项 目 !

  得 到 一 个 干 净 的 仓 库 和 工 作 空 间 后, 我 们 为 它 们 保 存 一 个 拷 贝,:

  1. 将c:\ IBMVJava\ide\repository\ivj.dat 拷 贝 到base.dat。

  2. 将c:\ IBMVJava\ide\program\ide.icx 拷 贝 到base.icx。

  进 一 步 清 除 可 遵 循 下 面 的 简 单 步 骤:

  1. 将 仓 库 文 件(c:\ IBMVJava\ide\repository\ivj.dat ) 更 名 为all.dat。

  2. 将 保 存 的base.dat 文 件 拷 贝 到c:\ IBMVJava\ide\repository\ivj.dat。

  3. 将 保 存 的base.icx 文 件 拷 贝 到c:\ IBMVJava\ide\program\ide.icx。 此 举 将 用 保 存 的 工 作 空 间( 该 工 作 空 间 与 保 存 的 仓 库 相 对 应) 代 替 现 有 的 工 作 空 间 。

  4. 启 动VisualAge for Java。

  5. 从all.bat 文 件 中 输 入 想 保 留 的 代 码。 注 意 仓 库 文 件 是 交 换 文 件, 所 以 可 以 通 过 选 择“Interchange format” 作 为 输 入 格 式 来 完 成 这 一 步 骤, 可 以 从all.bat 文 件 中 选 择 任 何 想 要 保 留 的 项 目 和 包 以 及 保 留 项 目 和 包 的 哪 一 个 版 本。

  6. 从 仓 库 中 将 项 目 和 包 添 加 到 工 作 空 间。

  通 过 这 个 过 程, 我 们 可 以 容 易 地 在 仓 库 中 保 存 多 个 代 码 版, 并 清 除 掉 不 想 保 留 的 版 本。 提 高 开 发 环 境 性 能

  VisualAge for Java 是 一 个 需 要 大 量 资 源 的 开 发 环 境, 执 行 多 项 任 务, 例 如 增 加 编 辑 和 从 属 性 确 认 等。 为 了 使 这 些 过 程 少 消 耗 一 些 时 间, 我 们 可 以 采 用 以 下 一 些 技 巧。

  1. 选 择 合 适 的 驱 动 器 并 经 常 消 除 碎 片

  硬 盘 驱 动 器 常 常 对 性 能 有 很 大 影 响, 在 安 装VisualAge for Java 时, 请 遵 循 下 述 方 针: SCSI 驱 动 器 的 访 问 速 率 通 常 比IDE 驱 动 器 快, 如 果 可 能 的 话, 应 该 将VisualAge for Java 安 装 到SCSI 驱 动 器 上。 如 果 有 多 个 物 理 驱 动 器( 不 是 一 个 物 理 驱 动 器 上 的 多 个 分 区), 不 要 将VisualAge for Java 安 装 在 包 含 虚 拟 内 存 交 换 文 件 的 硬 盘 上。 如 果 有 一 个 约200MB 的 空 分 区 可 用, 将VisualAge for Java 安 装 在 该 分 区 中, 并 在 该 分 区 中 不 再 安 装 任 何 其 他 东 西, 这 样 做 将 减 少 仓 库 碎 片。

  VisualAge for Java 仓 库 相 当 大( 通 常 超 过20M), 并 且 很 快 就 会 产 生 许 多 碎 片。 经 常 对 驱 动 器 消 除 碎 片( 比 如 每 天), 可 以 显 著 加 地 快 访 问 速 度。

  2. 优 化 窗 口 交 换 文 件

  如 果 在Windows 95 和NT 上 运 行VisualAge for Java, 虚 拟 内 存 设 置 将 极 大 地 影 响 性 能。 如 果 没 有 数 百 兆 内 存 空 间, 当 在 系 统 上 使 用VisualAge for Java 和 其 他 工 具 时, 就 有 可 能 出 现 内 存 与 磁 盘 交 换 操 作。 这 里 是 几 项 优 化 系 统 的 方 针: 使 用 一 个 系 统 监 控 工 具 查 看 交 换 文 件 的 尺 寸, 这 将 有 助 于 精 确 确 定 需 要 多 大 的 交 换 空 间。 设 置 最 小 交 换 文 件 尺 寸。 按 照 操 作 系 统 文 件, 设 置 最 小 交 换 文 件 尺 寸 为 上 一 步 所 观 察 到 的 尺 寸, Windows 将 把 这 个 尺 寸 的 硬 盘 空 间 分 配 给 交 换 文 件 使 用。 相 比 之 下, 在 缺 省 最 小 交 换 文 件 尺 寸 时,Windows 将 经 常 调 整 交 换 文 件 尺 寸。 将 最 大 交 换 文 件 尺 寸 设 为 最 大 可 用 磁 盘 空 间, 这 将 有 助 于 避 免 内 存 溢 出 错 误,Windows 将 不 会 调 整 交 换 文 件 尺 寸, 除 非 需 要 更 多 的 空 间。

  3. 从 仓 库 和 工 作 空 间 中 删 除 不 需 要 的 代 码

  如 前 所 述,VisualAge for Java 仓 库 是 一 个 数 据 库, 其 中 包 含 了 所 有 的 源 代 码 版 本 和 类 库, 以 及 可 视 设 计 信 息 和 项 目 优 选 选 择 信 息, 较 小 的 仓 库 意 味 着 实 际 使 用 时 有 较 好 的 数 据 访 问 时 间。 工 作 空 间 是 一 个 进 入 仓 库 的 窗 口, 该 窗 口 允 许 访 问 一 组 确 定 的 项 目 和 包, 其 中 只 包 含 一 个 代 码 版。

  当 使 用 者 执 行 一 个 编 辑 操 作 时,VisualAge for Java 会 在 工 作 空 间 检 查 从 属 性, 并 重 新 编 辑 任 何 需 要 重 新 编 辑 的 东 西。 较 大 的 工 作 空 间 意 味 着 更 多 的 从 属 性 检 查, 结 果, 性 能 就 要 降 低。 如 果 在 工 作 空 间 中 有 不 使 用 的 代 码, 请 遵 循 下 述 步 骤:

  (1). 转 换 不 再 使 用 的 代 码 版。 在 工 作 空 间 中 选 择 该 代 码( 或 者 它 自 己 的 包 或 项 目), 并 从 弹 出 菜 单 中 选 择 “Version”。 通 过 转 换 代 码, 将 该 代 码 的 当 前 形 态 锁 定 在 仓 库 中, 当 需 要 这 一 代 码 时, 可 以 再 从 仓 库 中 取 回。

  (2). 从 工 作 空 间 中 删 除 代 码。 在 转 换 代 码 以 后, 可 以 从 工 作 空 间 中 删 除 它, 而 它 仍 然 在 仓 库 中 存 在。 现 在, 在 工 作 空 间 中 执 行 的 任 何 编 辑 将 不 会 再 检 查 这 一 代 码。

  保 持 分 立 的“ 小 仓 库” “ 小 仓 库” 是 介 于 两 种 删 除 处 理 方 案 之 间 的 方 法。 如 果 有 一 些 代 码 很 少 使 用( 例 如 Java 范 例), 使 用 者 可 以 引 用 上 文 介 绍 的 从 仓 库 中 删 除 的 技 巧, 但 一 定 要 用 分 立 的 交 换 文 件 保 存 代 码。 例 如, 学 校 中 的 使 用 者 正 在 开 发 一 个 练 习 解 决 方 案, 他 可 能 为 此 做 了 许 多 工 作, 然 后 把 它 写 在CD 上 或Web 网 点 上, 并 有 一 个 时 期 不 再 需 要 使 用 它。 当 不 经 常 使 用 这 个 代 码 时, 他 可 以 把 它 输 出 到 一 个 交 换 文 件 中 储 存 起 来, 然 后 从 仓 库 中 删 除。 下 面 是 具 体 的 做 法: 转 换 将 要 仓 储 的 包 或 项 目。 把 它 们 输 出 到 一 个 单 独 的 交 换 文 件 中, 赋 予 其 一 个 有 意 义 的 名 字, 这 样 可 以 很 容 易 地 回 忆 起 是 哪 一 个 文 件。 按 照 提 示 删 除, 从 仓 库 中 删 除 代 码。 当 再 次 需 要 这 个 代 码 时, 输 入 交 换 文 件, 然 后 把 这 个 项 目 添 加 到 工 作 空 间 中。

  4. 获 得 更 多 的 内 存

  获 得VisualAge for Java 性 能 的 最 好、 最 便 宜 的 方 法 是 增 加 更 多 的 内 存。 随 着 计 算 机 变 得 更 快, 文 件I/O 速 度 越 来 越 成 为 一 个 瓶 颈 因 素。 如 果 没 有 足 够 的 内 存 来 运 行 程 序, 数 据 就 必 须 与 硬 盘 交 换, 与 计 算 机 上 的 其 他 操 作 相 比, 这 一 交 换 过 程 将 是 非 常 慢 的。 增 加 更 多 的 内 存 可 以 将 系 统 提 高 到 至 少64MB, 从 而 可 以 大 大 减 少 交 换, 显 著 改 进 性 能。

  对 于VisualAge 来 说,64MB 内 存 已 经 足 够 了, 但 是 再 多 些 也 无 妨, 特 别 是 如 果 同 时 运 行VisualAge for Java、 浏 览 器、 邮 件 程 序、 画 图 程 序、 字 处 理 软 件 以 及 文 本 编 辑 器 时。 相 比 之 下, 内 存 很 便 宜, 工 作 效 率 的 提 高 几 乎 立 刻 就 可 以 把 投 入 收 回。

本文地址:http://com.8s8s.com/it/it18773.htm