VISUAL PROLOG.ppt_第1页
VISUAL PROLOG.ppt_第2页
VISUAL PROLOG.ppt_第3页
VISUAL PROLOG.ppt_第4页
VISUAL PROLOG.ppt_第5页
免费预览已结束,剩余97页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2020 2 15 空军工程大学雷英杰 1 雷英杰 空军工程大学导弹学院二系 VisualProlog 智能化应用开发的强大工具 2020 2 15 空军工程大学雷英杰 2 VisualProlog语言专题网页 2020 2 15 空军工程大学雷英杰 3 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 4 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 5 Prolog语言是人工智能与专家系统领域最著名的逻辑程序设计语言 VisualProlog意指可视化逻辑程序设计语言 是基于Prolog语言的可视化集成开发环境 是Prolog开发中心 PDC 最新推出的基于Windows环境的智能化编程工具 其语言特性符合相应的国际标准ISO IEC13211 1 1995 是国际上研究和开发智能化应用的主流工具之一 预计不长时期内 VisualProlog将会在我国流行开来 并将迅速成为我国研究和开发智能化应用的主流工具 一 概述 2020 2 15 空军工程大学雷英杰 6 VisualProlog具有模式匹配 递归 回溯 backtrack 对象机制 事实数据库和谓词库等强大功能 它包含构建大型应用程序所需要的一切特性 图形开发环境 编译器 连接器和调试器 支持模块化和面向对象程序设计 支持系统级编程 文件操作 字符串处理 位级运算 算术与逻辑运算 以及与其它编程语言的接口 VisualProlog包含一个大型库 捆绑了范围广阔的API函数 包括WindowsGUI函数族 ODBC OCI数据库函数族和Internet函数族 socket ftp http cgi等 开发环境全部使用VisualProlog语言写成 而且包含对话框 菜单 工具栏等若干编码专家和图形编辑器 一 概述 2020 2 15 空军工程大学雷英杰 7 VisualProlog非常适合于专家系统 规划和其它AI相关问题的求解 是智能程序设计语言中具有代表性且应用较多的一种程序设计语言 由于这种语言很适合表达人的思维和推理规则 在自然语言理解 机器定理证明 专家系统等方面得到了广泛的应用 在智能程序设计语言中占有相当重要的地位 VisualProlog不仅是优秀的智能化应用开发工具 而且与SQL数据库系统 VisualC 或其它C 开发系统 VisualBasic Delphi或VisualAge等编程语言一样 已经成为适用于任何应用领域的强有力的通用开发工具 一 概述 2020 2 15 空军工程大学雷英杰 8 智能化是当前计算机 自动化 通信 管理等信息科学技术领域中的新方法 新技术 新产品的重要发展方向与开发策略之一 信息处理的智能化与信息社会对智能的巨大需求是人工智能发展的强大动力 人工智能与专家系统曾取得过许多令人注目的成果 也走过不少弯路 经历过不少挫折 近几年来 随着计算机与网络通信技术的迅猛发展 特别是因特网的大规模普及 人工智能与专家系统的研究再度活跃起来 并正向更为广泛的领域发展 围绕人工智能与专家系统的研究和应用开发也迎来一个蓬勃发展的新时期 一 概述 2020 2 15 空军工程大学雷英杰 9 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 10 二 VisualProlog与Prolog Prolog是全世界计算机科学家多年来研究工作的结晶 Prolog的第一个正式版本由法国马赛大学AlainColmerauer于70年代作为一种逻辑程序设计工具研制 其结果是诞生了一种远比当今Pascal和C这样著名的编程语言功能更加强大的语言 一个特定应用的Prolog程序典型情况下只需要对应C 程序的十分之一程序行 今天 Prolog是人工智能应用编程和专家系统开发的一个非常重要的工具 更多的 用户友好性 和智能化程序的要求是使Prolog流行起来的另一个原因 2020 2 15 空军工程大学雷英杰 11 Prolog最重要的好处是非常公平地适用于任何应用领域 通过让程序员建立对象和进程之间的逻辑关系 复杂问题更容易从本质上求解 而且产生的程序在其生命周期更容易维护 定制知识库 专家系统 自然语言接口和智能信息管理系统这些应用都是当前使用VisualProlog进行程序设计的领域范围 Prolog已经走出了人工智能实验室 PDC的VisualProlog是一个商业上富有竞争的通用开发环境 VisualProlog因其容易增加程序甚至网站的智能化特性而日益变成许多开发者选择的工具 2020 2 15 空军工程大学雷英杰 12 Prolog是一种众所周知的说明性语言 这就是说 给出所需要的事实和规则 Prolog将使用演绎推理求解编程问题 这与传统的过程性编程语言如C BASIC和Pascal等形成了鲜明的对照 在过程性语言中 程序员必须提供一步一步的指令 准确地告诉计算机如何求解给定的问题 换句话说 程序员必须预先知道如何求解这个问题 另一方面 Prolog程序员只需要提供对问题的描述和求解的基本规则 此后 Prolog系统将确定如何找到一个解 Prolog鼓励程序员从结构良好的问题描述开始 因而实际上 Prolog也可以被用作指定产品的规格说明工具和实现工具 2020 2 15 空军工程大学雷英杰 13 VisualProlog是PDCProlog和TurboProlog的后继产品 在微机上 VisualProlog是基于Windows环境的 而早期的PDCProlog和TurboProlog是基于DOS环境的 VisualProlog特别适合于处理知识和知识问题求解 是优秀的智能化应用开发工具 同时也已经成为适合于任何应用领域的通用开发工具 PDC的VisualProlog特别适用于这些传统类型的数据库任务 因为VisualProlog具有的编程能力之一就是十分易于使用的数据库引擎 2020 2 15 空军工程大学雷英杰 14 VisualProlog由于高度优化的编译器 创建的程序非常快 几乎与基于C 的应用程序一样快 Web编程支持和对象机制这两种功能是对VisualProlog商用有效性的巨大贡献 对象机制本身就是一种非常强大的建模工具 几乎已经成了Pascal C Smalltalk等语言的一种事实上的标准 Web编程支持是一个重要的新特性 譬如 用VisualProlog写的专家系统 可以被连接到Web页 在支持部门 网上贸易和其它一些基于Web技术的开发等方面将发挥重要作用 2020 2 15 空军工程大学雷英杰 15 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 16 三 Prolog能作何用 3 1人工智能应用 Prolog最初是作为一种人工智能 AI 语言设计的 它非常适合于专家系统和类似的AI应用 框架和基于规则的系统 前向链和后向链 模式匹配机制 约束求解机制 都是自然而精致的Prolog潜在语义的表达式 PDC的用户已经在银行 航空 健康 保险 医疗 工业等广泛的领域建成咨询系统 决策支持 诊断 专家系统外壳或自然语言应用程序 2020 2 15 空军工程大学雷英杰 17 3 2其它领域的应用 Prolog的能力已经延伸到AI之外 高级抽象 表示复杂数据结构的易用性和简明性 使得编程的说明性方法有益于任何学科或问题求解策略 基于这个原因 VisualProlog已经广泛用来建造行政事务 高级数据库管理 规划和调度系统 基于Web的应用等等 2020 2 15 空军工程大学雷英杰 18 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 19 四 VisualProlog的特点 1 可视化开发环境 可视化开发环境 VDE 把编译器与编辑器 资源工具箱 资源和应用专家 交互式建造工具和各种浏览工具等结合在一起 在交互式 可视化地创建用户接口部件之后 就自动生成了一个运行原型 应用程序专家为一个项目创建所需要的全部文件 资源专家知道如何生成Prolog代码 以支持所选择的全部资源 设计VDE是为了使开发应用程序更加容易 方便和快捷 这些应用程序是基于每一个本地操作系统提供标准接口的高级抽象 2020 2 15 空军工程大学雷英杰 20 2020 2 15 空军工程大学雷英杰 21 2 编码专家 编码专家创建并维护Prolog的控件资源代码 VisualProlog最大的强项可能是把布局设计工具 Layout 和编码专家结合在一起 编码专家完成大部分工作 就是说 你可以在几分钟之内创建一个应用程序 然后从这个原型逐渐增强到最终的应用程序 2020 2 15 空军工程大学雷英杰 22 2020 2 15 空军工程大学雷英杰 23 3 生成和配置项目的应用程序专家 应用程序专家能生成一个新项目 它说明操作系统 UI策略 C编译器 伴随工具等各种各样的组合 当生成一个新项目时 它将自动建立所有的基本工具 如帮助文件 工具栏 菜单等 2020 2 15 空军工程大学雷英杰 24 应用程序专家 2020 2 15 空军工程大学雷英杰 25 4 资源集成编辑器 这些工具使得以交互方式可视化地设计和修改用户接口成为可能 使用鼠标安排控件在对话框或窗口中的布局 设置访问属性 资源由窗口 对话框 位图 图标 光标和串等组成 它们是任何使用GUI的应用程序都需要的 2020 2 15 空军工程大学雷英杰 26 5 引入资源的能力 资源可以从DLL 应用程序 RES文件及其它VisualProlog项目引入 2020 2 15 空军工程大学雷英杰 27 6 语言敏感的文本编辑器 VisualProlog包含现代开发环境中能找到的所有特性 例如功能强大的源代码编辑器 可以使VisualProlog的关键字和其它语言元素的代码有不同的颜色 这些颜色能使谓词名 参数 注释等之间的差别更易于区分 编辑器支持不受限制的撤消与重做设施 搜索与替换 剪切 拷贝 粘贴 快速拖放移动块 甚至嵌入超文本链接 此外 与以前的PDC编辑器一样 程序员能够把这个编辑器功能包括在自己的应用程序中 2020 2 15 空军工程大学雷英杰 28 7 集成帮助生成器 内置的帮助创作系统使得很容易给出应用程序的联机帮助 这个帮助系统是基于PDC的超文本抽象机 HAM 的 在帮助创作系统中 有可能在设计阶段交互式地输入文本 用鼠标标记新的链接 跟随现有的链接 帮助系统能够输出Windows的 RTF格式 所以它可以生成本地的Windows帮助系统 Help编译器 如HCW EXE 不包括在VisualProlog中 但可以在VisualC 和BorlandC 产品中找到 如果需要一个更新版本的Windows帮助编译器 可以查看一下ftp 2020 2 15 空军工程大学雷英杰 29 VisualProlog的帮助系统 2020 2 15 空军工程大学雷英杰 30 8 源代码浏览器 VisualProlog编译器为源代码浏览器产生信息 所以 检查模块中的谓词 浏览项目中所有全局谓词 或者查找任何谓词 论域声明或定义的位置 都是很方便的 2020 2 15 空军工程大学雷英杰 31 9 项目共享与源代码控制 对于VP可以使用源代码控制系统 如VisualSourceSafe PVCS和MKS 它使得很容易在几个项目之间共享源代码 也允许多个程序员从事同一项目 2020 2 15 空军工程大学雷英杰 32 10 VP大型联机帮助参考信息 这个帮助设施提供一个完全的VDE操作指南和完整的基本Prolog语言及可视化编程扩展的参考信息 2020 2 15 空军工程大学雷英杰 33 2020 2 15 空军工程大学雷英杰 34 11 可视化编程接口 VPI 一种可移植的VisualProlog图形用户接口 GUI API已经定义 这个API是一种抽象的设施 可以在基本的Windows95 98 Me XP及WindowsNT 2000平台中找到 可视化编程接口给VisualProlog程序员一个比本地编程更可移植和更容易使用的GUIAPI 然而 为了使用户不受限制 VPI也包含不可移植的平台专用设施和选件 2020 2 15 空军工程大学雷英杰 35 12 高级GUI部件 这些工具包括删格 树型窗口 Explorer视图 工具栏 制表对话框 高级报表处理等 2020 2 15 空军工程大学雷英杰 36 13 快速而高度优化的编译器 VP的编译器产生紧凑的本地代码 足以与Pascal和C编译器所生成的代码媲美 编译器执行几种不同的分析 范围从全局流程分析和确定性机制检查 向下到寄存器分配和偷窥优化 除了产生有效代码 编译器执行许多高级检查 检测潜在的编译时间问题 主要是类型检验分析 全局流程分析 确定性机制检查和可能的失败检测 2020 2 15 空军工程大学雷英杰 37 编译器选件对话框 2020 2 15 空军工程大学雷英杰 38 14 检测编译时间错误的类型检查机制 VP杰出的特性之一是其类型机制 它提供一个额外级别的编程安全性 类型声明是资料性代码 有助于编译器在开发的早期阶段指出创建的类型错误和更严重的逻辑错误 因此 通过比照程序员和开发系统之间的类型 使得类型声明有助于保证一个程序在整个产品生命周期的完整性 更进一步 这些声明帮助编译器生成的程序更有效 在执行期间更节省存储空间 2020 2 15 空军工程大学雷英杰 39 15 调试器 当程序较大时 我们就会发现VP的调试器是一个不可缺少的工具 调试器对编译出来的代码进行工作 允许设置断点和单步执行代码 当单步执行代码时 可以检查变量的值及尚待证实的事实的内容 2020 2 15 空军工程大学雷英杰 40 调试器 2020 2 15 空军工程大学雷英杰 41 16 异常处理和错误陷阱 VP包括功能强大的处理错误情况和控制用户中断的机制 程序员可以在错误检查和错误报告的不同级别 0 1 2 3 上进行选择 2020 2 15 空军工程大学雷英杰 42 17 类和对象 人们常常在面向对象和说明性编程语言之间进行辩识 但在VP中 可以同时使用取自这两种范例的特性 VP语言支持对象和类 在设计中与C 实现类似 2020 2 15 空军工程大学雷英杰 43 18 可移植性编码 VP系统可用于多种平台 并能为多种平台生成程序 除了个别操作系统专用设施和限制之外 Prolog代码在所有平台之间是可移植的 2020 2 15 空军工程大学雷英杰 44 19 开放式平台 VP很好地设计了与其它编程工具的接口 VP能生成其它语言可调用的例程 它本身也能够调用其它语言编写的例程 接口是通用的 而且支持所有产生标准 OBJ模块的编译器 此外 VP程序还能够调用DLL 并被放在DLL内部 通过声明全局VP谓词为C语言 或stdcall 调用约定 通过声明参数类型和输入 输出流程模式 在VP和C之间不用特殊的胶合代码而直接调用C例程 就象它们是Prolog代码一样 是完全可能的 这种接口在两个方向上起作用 当谓词象C语言那样声明时 它们能够被C语言例程直接调用 2020 2 15 空军工程大学雷英杰 45 GLOBALPREDICATESprocedureLONGvpi LoadDll STRING i languagecprocedurevpi FreeDll LONG i languagecprocedureLONGvpi GetDllProc LONG STRINGProcName i i languagec 2020 2 15 空军工程大学雷英杰 46 20 集成Make工具 Make工具处理编译 连接 资源编辑和资源绑定等所有的复杂性 Make工具检查时间邮戳 只编译所需要的文件 为了显示项目的结构 可以把这种依赖关系显示成一个树 2020 2 15 空军工程大学雷英杰 47 Make工具 2020 2 15 空军工程大学雷英杰 48 21 功能强大的数据库子系统 快速而非常灵活的数据库子系统使VisualProlog成为一个比许多4GL数据库应用更适当的选择 这个数据库系统支持一个独特的VP项的有序链的集合 而数据库的项可以是语言本身支持的任何抽象或数据结构 从简单的记录到树或图 数据库系统能直接访问单个项 或经由项的链进行回溯 以产生或匹配特定值 数据库还支持B 树 以提供快速数据检索和有效改变项排序的能力 2020 2 15 空军工程大学雷英杰 49 如果正在LAN应用程序中使用数据库 就可以利用VP支持外部数据库系统的文件共享这个优点 通过使用一个机制 在交易内部有效地使文件访问串行化 从而提供多用户数据库访问 也就是说 一个数据库可以被几个用户或几个进程同时打开 2020 2 15 空军工程大学雷英杰 50 VP支持的不同类型的数据库 2020 2 15 空军工程大学雷英杰 51 22 客户 服务器体系结构 VP是一个建造客户 服务器应用程序的功能强大的平台 其主要途径当前是TCP IP绑定 也有可能是Windows下的NETDDE 使用其中任何一种设施 程序员可以在单个机器的多个进程之间 或在网络中分开的各机器程序之间 发送任意复杂的Prolog项 数据库和逻辑服务器可以用这种设施容易地进行建造 2020 2 15 空军工程大学雷英杰 52 23 ODBC和可移植SQL绑定 VP的外部数据库常常是存储大量数据最快和最灵活的途径 然而 数据可能在另一个数据库系统中已经存在 或者这个应用程序需要与其它仅仅使用特定数据库技术的应用程序共享数据 在这种情况下 能够连接到外部数据库变得非常重要 而VisualProlog与可移植SQL的绑定将使这种情况对于大多数数据库来说得到简化 可移植SQL绑定是基于ODBC Oracle的OCI库 或DB2的 对Windows平台而言 VP还包含更广泛的对Microsoft的ODBCAPI的直接绑定 2020 2 15 空军工程大学雷英杰 53 24 资料处理工具 PDC的DOC工具为处理丰富的格式化资料提供一个高级抽象 用Prolog结构来表示资料使得不受实际格式限制成为可能 而不管它们是否 RTF HTML或IPF格式 既有从Prolog项格式到这些格式的生成器 也有分析程序把任何这些格式转换为Prolog项格式 这些工具展现了许多应用程序的能力 如Word资料生成 Internet助理等 这些工具可以在DOC TOOL子目录中找到 子目录中还包含一个示例程序 可以看到HTML格式的文件在转换为 RTF格式时详细情形 2020 2 15 空军工程大学雷英杰 54 25 Prolog解释器的源代码 VP还包含Prolog推理机PIE PrologInferenceEngine 用VP编写的一个标准Prolog解释器的全部源代码 对于更多地学习Prolog如何工作和如何把元语言能力加进应用程序来说 这个解释程序是一个强大的工具 可以修改这个解释程序 创建自己专用的逻辑程序设计语言 推理机 专家系统外壳或程序接口等 2020 2 15 空军工程大学雷英杰 55 Prolog推理机 2020 2 15 空军工程大学雷英杰 56 26 把Prolog编译器嵌入到应用程序 在VPI TOOLEXAMP BUILD中 有一个例子说明如何把Prolog编译程序和连接程序集成到应用程序 以便编译那些尚未工作的规则 通过在 DLL中实现规则 就可以改变规则而不用关闭应用程序 这对于规划和调度而言是一个非常强大的特性 它要求付给PDC一笔小的运行时间费用 签署一个协议 你将不可以用它来创建一个与VP产品竞争的应用程序 如果你拥有VP的专业版本 就拥有所需要的全部特性 而且只要你的客户拥有VP的许可权 就可以把应用程序交给他们 否则 请与PDC联系 以获取更多的信息 2020 2 15 空军工程大学雷英杰 57 27 可视化开发环境的源代码 对于VP的专业版本 在VDESRC子目录中可以找到可视化开发环境的源代码 有了它 就可以任意定制所期望的VDE 或者研究在程序中如何实现这些功能 适当的工具和技术 2020 2 15 空军工程大学雷英杰 58 28 安装程序 用来安装VP的安装程序本身是用VP写成的 其核心源代码包含在光盘上 它能被修改而创建你自己应用程序的安装程序 2020 2 15 空军工程大学雷英杰 59 VisualProlog安装程序 2020 2 15 空军工程大学雷英杰 60 29 商业专家系统外壳 VP包含一个商业专家系统外壳ESTA 与它一起还提供了全部源代码 以定制和包含在自己的应用程序之中 2020 2 15 空军工程大学雷英杰 61 30 许多精致例子 在许多例子中 有一个标签专家 是创建和打印标签的一个小应用程序 你将发现它是一个真正展示所包含的VPI工具能力的精致的小例子 此外 随VP一起 还提供了许多展示Prolog问题求解的典型例子 2020 2 15 空军工程大学雷英杰 62 31 广泛的Internet编程支持 VP包含许多特性 可以容易地创建由Internet激活的应用程序 2020 2 15 空军工程大学雷英杰 63 32 绑定到套接字 包括绑定基本的低级接口和使套接字 Socket 接口用起来更安全 更容易的高级接口 套接字是对TCP IP协议的API 可以用来在Internet的程序之间 在一个网络内部或同一台计算机上的两个程序之间建立一种通信 2020 2 15 空军工程大学雷英杰 64 33 FTP支持 VP包含一组API和示例程序 显示如何使用Internet的文件传输协议FTP FileTransferProtocol 从Internet服务器发送和接收文件 2020 2 15 空军工程大学雷英杰 65 34 HTTP支持 VP包含一组API和示例程序 演示使用Internet超文本传输协议HTTP HyperTextTransferProtocol 这是环球网WWW WorldWideWeb 所用的基本协议 这组API可以用来在VisualProlog中创建WWW客户与服务器实用程序和Internet代理 Agent 2020 2 15 空军工程大学雷英杰 66 35 CGI支持和例子 VP包含一些CGI例子 显示如何创建和生成动态Web页的VP程序 2020 2 15 空军工程大学雷英杰 67 36 ISAPI支持和例子 VP支持Microsoft的ISAPI 允许在Microsoft信息服务器或任何其它支持ISAPI接口的HTTP服务器上有高性能脚本 2020 2 15 空军工程大学雷英杰 68 37 与JAVA小程序通信 VP还包括一些例子 显示如何使Prolog服务器与JAVA小程序 Applet 进行通信 2020 2 15 空军工程大学雷英杰 69 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 70 5 1Prolog是描述性的 一个Prolog程序由问题描述组成 而不是通过一系列步骤指定计算机必须如何工作来求解问题 从概念上讲 这个描述由两个部分组成 1 描述问题涉及的对象2 描述这些对象之间关系的事实和规则Prolog程序中的规则规定了给定的输入数据和由输入产生的输出之间的关系 五 Prolog与其它语言有何差别 2020 2 15 空军工程大学雷英杰 71 5 2Prolog使用事实和规则 一个Prolog程序实质上由一系列逻辑语句组成 这些语句或者是以事实的形式 或者是以规则的形式 2020 2 15 空军工程大学雷英杰 72 5 3Prolog能做推演 给出Prolog程序一个目标 如Goalfather John Mary Prolog将因为这个目标与存储的事实匹配而回答 Yes 如果在目标中使用变量 Prolog将求出这个变量的值 Goalfather X Mary Prolog将因为查找到事实而回答X John 2020 2 15 空军工程大学雷英杰 73 5 4Prolog求解过程是自动控制的 当一个VP程序用可视化开发环境的TestGoal实用程序运行时 系统试图找到满足给定目标的所有可能的解 在执行期间 显示结果 VP使用回溯机制 每次找到一个解 使Prolog再次评估那些假设 查看某些新值是否能提供新的解 而这种寻找所有解的过程是自动控制的 2020 2 15 空军工程大学雷英杰 74 5 5Prolog具有简洁的语法 学习VP的语法比传统编程语言的复杂语法要容易的多 2020 2 15 空军工程大学雷英杰 75 5 6Prolog是更高级的语言 Prolog是一种比C或Pascal更高级的语言 如前所述 Prolog典型情况下求解问题时只使用C或Pascal程序的十分之一程序行 这完全归功于Prolog具有内置的模式匹配设施 以及简单和有效的处理递归结构的方法 2020 2 15 空军工程大学雷英杰 76 这些就是Prolog独有特色的简短概括 随着深入钻研和开始编写程序 你将会发现Prolog具有更多更强大的功能 2020 2 15 空军工程大学雷英杰 77 主要内容一 概述二 VisualProlog与Prolog三 Prolog能作何用四 VisualProlog的特点五 Prolog与其它语言有何差别 六 关于VisualProlog资料七 系统需求 2020 2 15 空军工程大学雷英杰 78 VP的 中文 资料有 VisualProlog语言教程 陕西科技出版社 VisualProlog编程 环境及接口 国防工业出版社 联机帮助文件 英文 HTML格式的资料 英文 六 关于VisualProlog资料 2020 2 15 空军工程大学雷英杰 79 6 1语言教程 语言教程着重从语言的角度 全面而系统地介绍VP语言及其编程 全书共分四个部分 第一部分介绍VP可视化开发环境的一个子集 举例解释如何创建 运行 调试及保存程序 第二部分 第2 11章 介绍如何学会用VP编程 包括基本原理 程序结构 合一与回溯 简单对象与复合对象 重复与递归 表与递归 事实数据库 算术与比较运算 引用变量 谓词指针 二进制论域 项的转换 动态截断 错误和信号处理 程序设计风格 对象机制与面向对象程序设计 2020 2 15 空军工程大学雷英杰 80 6 1语言教程 第三部分 第12 16章 叙述VP的预定义特性 包括文件操作 串处理 外部数据库 系统级编程及程序举例 第四部分 第17 18章 详细叙述VP语言元素和模块化程序设计 以及与其它编程语言的接口 两个附录 谓词索引 按功能分类 谓词索引 按字母顺序 2020 2 15 空军工程大学雷英杰 81 系统介绍VisualProlog VP 语言的功能特点 编程方法 开发环境及编程接口 全书分为三篇 编程指南篇开发环境篇编程接口篇 6 2VisualProlog编程 环境及接口 2020 2 15 空军工程大学雷英杰 82 详细介绍VP语言的功能特点及编程方法 包括第1章至第9章 第1章VisualProlog概述介绍Prolog能做何用 VP的功能特点 与其它编程语言的差别等 第2章系统安装介绍VP的安装过程和来自Prolog开发中心的技术支持 第3章编程起步本章是熟悉整个系统大体功能的一个快速和轻松的导读 首先介绍VP的目标和规则等基本概念 然后从应用程序专家开始 介绍如何运行VP程序 如何使用代码浏览器 资源标识符浏览器 项目浏览器来学习所生成的代码 最后介绍系统最常使用的重要热键 6 2 1编程指南 2020 2 15 空军工程大学雷英杰 83 第4章扩展 HelloWorld 程序一步一步介绍如何使用VP的菜单编辑器和代码专家 对话框与窗口专家 来扩充 HelloWorld 应用程序 学会VP编程的基本技巧 第5章创建窗口介绍如何创建一个新的源程序模块 创建一个新的窗口 如何为窗口生成缺省代码 检查来到窗口的事件 以及更多的画图操作 第6章给窗口添加控件介绍如何使用工具栏专家 图形编辑器和菜单编辑器等工具给窗口添加 编辑和使用位图 工具栏 菜单等资源 如何画鼠标掠影 改变鼠标光标 设置鼠标热点 如何创建弹出式菜单及改变画图颜色等 6 2 1编程指南 2020 2 15 空军工程大学雷英杰 84 第7章使用系统资源介绍如何使用对话框包装专家来创建和使用时钟窗口 定时器 图片窗口 树形窗口 编辑器窗口 如何处理剪贴板 控制打印机 给窗口添加更多的控件 使用列表框 创建对话框 以及使用DDE 第8章创建帮助文件介绍如何为应用程序创建添加编辑器功能和联机帮助等 第9章调试Prolog程序介绍VP的调试器 6 2 1编程指南 2020 2 15 空军工程大学雷英杰 85 系统介绍VP的可视化开发环境 VDE 包括第10章至第17章 第10章使用VDE介绍VDE中使用的项目文件 项目窗口 信息窗口和项目模块树 以及代码浏览器 资源标识符浏览器等实用程序 还讨论了环境选项设置和全局初始化文件 第11章应用程序专家介绍如何创建VP应用程序 包括项目命名 项目基目录 多程序员支持 目标选项和VPI选项 以及项目中生成的文件和目录结构的描述 第12章建立 编译和连接详细介绍VP的编译器选项和代码生成器选项 以及具有符号 规则和脚本功能的Make工具 还介绍了建立项目的有关菜单命令 6 2 2开发环境 2020 2 15 空军工程大学雷英杰 86 第13章资源编辑详细介绍资源命名 资源连接和资源引入 以及窗口与对话框编辑器 资源串编辑器 工具栏编辑器 菜单编辑器 图形编辑器和画图编辑工具 第14章编码专家介绍如何利用代码生成专家来生成和编辑VP程序源代码 包括对话框与窗口专家 对话框包装专家及工具栏专家 第15章文本编辑器介绍具有VP特色的通用文本编辑器 6 2 2开发环境 2020 2 15 空军工程大学雷英杰 87 第16章帮助生成器介绍如何使用这个非常方便的实用工具来生成Windows帮助文件 第17章调试器介绍VP调试器及调试VP应用程序所需要的有关信息 6 2 2开发环境 2020 2 15 空军工程大学雷英杰 88 系统介绍VisualProlog的可视化编程接口 VPI VPI是一种高级应用程序接口 API 其设计是为了利用现代操作系统和显示硬件的图形能力 为Prolog应用程序提供完善的用户接口 这个VPI基本上是不受平台约束的 然而 并非每一个GUI的全部设施都出现在这个VPI中 也并非这个VPI中的每一个设施全部都是可移植的 这个VPI试图以一种统一的方法支持每一种平台上都能找到的所有特性 6 2 3编程接口 2020 2 15 空军工程大学雷英杰 89 VPI中的论域 常量和谓词不随目标平台改变 为了帮助那些对可移植性不感兴趣但需要具有最大灵活性的开发者 VPI也包含若干不可移植但却与给定平台密切相关的谓词 正如使用其它通用编程语言一样 编写一个可移植的VPI应用程序是可能的 但也可能编写出一个应用程序是不可移植的 本篇内容包括第18章至第24章 第18章调用VPI简要介绍VP的编程接口和事件驱动的应用程序等概念 描述了VP应用程序调用VPI谓词的基本过程 6 2 3编程接口 2020 2 15 空军工程大学雷英杰 90 第19章窗口与事件谓词详细介绍窗口风格与窗口类型 窗口的创建 撤消 移动 改变窗口大小 状态 以及与窗口相关的处理谓词 还介绍与窗口有关的事件及事件处理 包括窗口的创建与撤消事件 用户请求关闭窗口事件 关闭GUI事件 窗口菜单事件 窗口鼠标事件和窗口键盘事件等 最后介绍了本地GUI事件 动态数据交换 控件通知事件 应用程序事件等的处理谓词 第20章控件操作谓词介绍控件的操纵 控件的样式 来自控件的事件 以及各种标准控件 属主绘图控件和自定义控件等的操作谓词 6 2 3编程接口 2020 2 15 空军工程大学雷英杰 91 第21章资源操作谓词介绍如何在VPI应用程序中获取或检查由VDE资源编辑器创建的各种资源 首先介绍资源类型 然后详细介绍对话框 菜单 光标 图片 图元文件 剪贴板及插字符等GUI资源操作谓词 图片 介绍处理图片的谓词 包括图片格式转换 图片的创建 撤消 绘制 装入 保存 旋转 剪贴板 介绍如何从剪贴板得到数据 如何将数据放入剪贴板 以及测试剪贴板数据的谓词 图元文件 介绍图元文件的装入 播放 撤消 记录谓词 6 2 3编程接口 2020 2 15 空军工程大学雷英杰 92 第22章绘图操作详细介绍了绘图工具及其获得和设置方法 绘图谓词 包括画像素点 填充区域 绘制图标 绘制打开的图形 画填充图形 以及绘制文本 处理字体有关的操作谓词 颜色处理 介绍了用基本的红 绿 兰三元色产生各种颜色的方法以及选择颜色的谓词 坐标系 介绍对话框的基本度量单元以及如何将一个窗口系统的坐标映射到其它窗口 还介绍了窗口的映射模式 打印 介绍了VPI应用程序中支持打印工作的谓词 包括开始打印 结束打印 设置页的打印方向 开始打印一新页 中止打印与获取打印设置 6 2 3编程接口 2020 2 15 空军工程大学雷英杰 93 第23章系统级操作主要介绍系统资源或与系统内部处理有关的操作谓词 定时器 介绍启动 停止定时器的方法及谓词 动态数据交换 介绍客户机 服务器的角色 DD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论