摘要 | 第1-5页 |
ABSTRACT | 第5-7页 |
目录 | 第7-12页 |
CONTENTS | 第12-17页 |
第一章 绪论 | 第17-26页 |
·程序设计可视化 | 第18页 |
·程序设计可视化各阶段的发展现状 | 第18-21页 |
·编辑阶段 | 第18-19页 |
·编译阶段 | 第19页 |
·编译器的黑箱特性和可视化意义 | 第19-20页 |
·执行阶段 | 第20-21页 |
·虚拟机的黑箱特性和可视化意义 | 第21页 |
·基于多候选方案的软件开发过程 | 第21-22页 |
·MOSBD的特点 | 第22页 |
·现有软件开发工具与MOSBD | 第22页 |
·可视化集成开发环境 | 第22-25页 |
·现有集成开发环境的概述 | 第22-23页 |
·可视化集成开发环境的概述 | 第23-25页 |
·课题目标 | 第25-26页 |
第二章 AnyviewJ的功能分析 | 第26-35页 |
·AnyviewJ的系统功能 | 第26页 |
·系统功能的取舍 | 第26-30页 |
·AnyviewJ的预研-BluerJ的引入 | 第26-27页 |
·代码量估计以及功能的取舍 | 第27-29页 |
·开发计划 | 第29-30页 |
·AnyviewJ的预研-BluerJ | 第30-35页 |
·BluerJ的界面 | 第30-31页 |
·与可视化编辑相关的模块 | 第31-35页 |
第三章 Java可视类装载器 JVL | 第35-63页 |
·Java虚拟机 | 第35-36页 |
·Java类装载子系统 | 第36-37页 |
·解析过程与常量池 | 第37-38页 |
·Java可视类装载器(JVL)及其需求分析 | 第38-43页 |
·JVL的启动装载过程和解析过程 | 第38-39页 |
·JVL中信息的可视性和交互性分析 | 第39-40页 |
·动态显示装载过程的分析 | 第40页 |
·界面的需求分析 | 第40-43页 |
·JVL的总体设计 | 第43-45页 |
·JVL的总体设计思想 | 第43-44页 |
·模块功能及其交互 | 第44-45页 |
·数据结构设计 | 第45-48页 |
·Class结构 | 第45-47页 |
·常量池和常量池项结构 | 第47-48页 |
·类型装载的过程设计 | 第48-52页 |
·getClassX()函数流程 | 第48-49页 |
·load ConsantPool()函数流程 | 第49-52页 |
·通用的图形子模块(Graph)以及界面子模块(GUI)的设计 | 第52-54页 |
·Graph子模块 | 第52-53页 |
·GUI子模块 | 第53-54页 |
·类装载器图形子模块(loaderGraph)的设计 | 第54-56页 |
·非Entry类型 | 第54-55页 |
·Entry类型 | 第55-56页 |
·线程通信模块(thread)的设计 | 第56页 |
·线程的设计 | 第56-58页 |
·visualLoader子模块中线程的设计 | 第57页 |
·Graph子模块以及GUI子模块中线程的设计 | 第57页 |
·线程的两种设计模式 | 第57-58页 |
·线程的详细设计 | 第58-60页 |
·MeassageEntry的详细设计 | 第58-59页 |
·类装载器的详细设计 | 第59页 |
·VisualNameSpace的详细设计 | 第59页 |
·ClassInfoNameSpace的详细设计 | 第59-60页 |
·类型信息更新的顺序图 | 第60页 |
·运行示例 | 第60-63页 |
第四章 Java可视编译器JVC | 第63-120页 |
·编译系统概述 | 第63-65页 |
·编译程序的阶段 | 第63页 |
·词法分析 | 第63页 |
·语法分析 | 第63-64页 |
·语义分析 | 第64-65页 |
·错误管理 | 第65页 |
·目标代码生成 | 第65页 |
·Java可视编译器JVC及其设计原则 | 第65-70页 |
·JVC的开发方式 | 第66页 |
·词法分析与语法分析的调用关系 | 第66-67页 |
·语法的选择 | 第67页 |
·语法分析和语义分析的关系 | 第67-68页 |
·中间代码生成模块以及优化模块 | 第68页 |
·错误的处理方法 | 第68-69页 |
·JVC的编译过程 | 第69-70页 |
·JVC的总体设计 | 第70-71页 |
·JVC的设计思想 | 第70页 |
·模块功能及其交互 | 第70-71页 |
·抽象语法树结点的设计 | 第71-79页 |
·顶层结点 | 第72-74页 |
·与类声明相关的结点 | 第74-76页 |
·与方法、构建器以及初始化器相关的结点 | 第76-77页 |
·与语句相关的结点 | 第77-78页 |
·与右值相关的结点 | 第78-79页 |
·其他类型结点 | 第79页 |
·Java编译器模块的设计 | 第79-94页 |
·启动模块的设计 | 第79-80页 |
·词法分析模块的设计 | 第80页 |
·语法分析模块的设计 | 第80-88页 |
·语义分析模块的设计 | 第88-90页 |
·目标代码生成模块的设计 | 第90-93页 |
·其他辅助模块的设计 | 第93-94页 |
·JVC的可视化分析 | 第94-101页 |
·JVC中信息的可视性和交互性分析 | 第94-96页 |
·动态显示编译过程的分析 | 第96-97页 |
·JVC的界面分析 | 第97-101页 |
·编译器图形子模块(compilerGraph)的设计 | 第101-103页 |
·非Entry类型 | 第101-102页 |
·Entry类型 | 第102-103页 |
·线程的设计 | 第103页 |
·运行示例 | 第103-108页 |
·JVC的测试 | 第108-120页 |
·编译器测试理论 | 第109-111页 |
·JVC的测试原则 | 第111页 |
·JVC的功能测试 | 第111-115页 |
·JVC的性能测试 | 第115-118页 |
·JVC的后续测试 | 第118-120页 |
第五章 可视化的多候选方案辅助管理 | 第120-130页 |
·MOSF概述 | 第120页 |
·MOSF的缺点以及MOSFJ的提出 | 第120-121页 |
·基于多候选方案的软件开发过程(MOSBD)的需求分析 | 第121-123页 |
·与组成抽象类集合的抽象类相关的用例 | 第121-122页 |
·与组成候选方案的类相关的用例 | 第122-123页 |
·MOSFJ提供的辅助管理功能 | 第123-124页 |
·AnyviewJ中需要修改的模块的设计 | 第124-127页 |
·修改后的AnyviewJ的工程管理模块 | 第124-125页 |
·修改后的AnyviewJ的图形模块 | 第125-126页 |
·修改后的AnyviewJ的编译器/虚拟机接口模块 | 第126-127页 |
·MOSFJ的设计 | 第127-129页 |
·管理对象模块 | 第127页 |
·管理模块 | 第127-128页 |
·通信模块 | 第128-129页 |
·模块间的关系图 | 第129页 |
·运行示例 | 第129-130页 |
结论 | 第130-132页 |
参考文献 | 第132-136页 |
攻读硕士学位期间发表的论文 | 第136-137页 |
独创性声明 | 第137-138页 |
致谢 | 第138页 |