研究生课程_程序语言设计原理教程_第15章.ppt_第1页
研究生课程_程序语言设计原理教程_第15章.ppt_第2页
研究生课程_程序语言设计原理教程_第15章.ppt_第3页
研究生课程_程序语言设计原理教程_第15章.ppt_第4页
研究生课程_程序语言设计原理教程_第15章.ppt_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

第15章平台无关语言,使用平台无关语言的需求脚本语言Java语言,15.1使用平台无关语言的需求,高级程序设计语言本应是平台无关的在高级语言中,数据、控制流等都是抽象的。源程序经过编译生成的目标码是与本地机紧密相关的。表现在:基本类型定义与及其字长相关;各机指令集不一,操作效果相当,实现过程有微小的差别;同一语言在相同编译和执行环境下,同一程序执行速度不一(硬件差异,优化次数);已采用增加可移植手段。设预定义环境(包)Ada;分出头文件-宏-编译文件C;,单主机时代,需要解决的主要问题是高级语言程序可移植性,以减少应用程序的开发费用,缩短开发周期。这时对平台无关性的要求不是十分迫切。,局域网时代,需要在局域网内实现信息共享,有协作计算需求。网络协议栈实现了数据的平台无关;以文件共享形式实现;客户/服务器模式,程序可以不共享;只要局域网内使用相同或相互兼容的平台,也可以实现程序的共享。,Internet时代,对资源共享提出了新的要求:局域网的规模和结构是可控制的;但是,没有任何个人和机构可以控制Internet的构成。Internet/Intranet包含各种类型计算机,是资源共享的平台。不论用户使用的是什么类型的计算机和操作系统,都可以浏览网络上的信息,使用网络中的资源。WWW(WorldWideWeb)是Internet上最广泛的信息发布/浏览方式。与FTP等以往的方式相比较,WWW具有较强的动态性和交互性,需要完成复杂的应用(如电子商务等)因此,共享资源不但包括数据,也应包括程序。这就需要一种平台无关的语言。激烈的竞争迫使软件生产者不断降低开发成本,缩短开发周期。平台无关语言使开发者不需要为一个软件开发多个操作系统的版本,减少了开发费用和时间。,平台无关语言的实现:传送源代码将源代码传送到目标机,先经过编译,生成目标机代码,再执行。前提是必须有不同平台的编译器,这种情况往往在编译时缺乏源代码原有的环境信息(全程量),且只能先编译存入目标码再运行。局域网时代服务器已经做过了。要实时运行只能是解释(也要求有完整的信息)型语言。传送目标代码只有在相同或相互兼容的平台之间才可以实现。如在WindowsNT/9x组成的局域网中,可以在一台机器上调用执行其它机器上的应用程序。传送中间代码中间代码由源代码经过编译生成。中间代码经过优化。中间代码传送到目标机上由解释器解释执行。Java语言使用的是这种方式。,15.2脚本语言,脚本语言的概述:描述性语言(4GL);直接解释执行;操作系统界面语言的扩大泛shell;辅助开发(不是设计,但引用内部过程、函数、对象);,常见的脚本语言有:页面描述类:TELEX、Postscript、HTML、VPML;场景描述类:JavaScript、VBScript/ActiveX脚本、LotusScript(Lotus公司的Notes群件产品中的脚本语言),15.2.1HTML(Hyper-TextMarkupLanguage),用于描述Web主页,为所有OS上的浏览器所识;设计编排多媒体主页(包括正文字体、图形、动画);以超文本方式使用,可以链接任何网址上的各种多媒体文档,包括普通正文、HTML文档、GIF图形、TIFF图形;XBM位图、JPEG图形、Postscript文件、AIFF声音、AU声音、QuickTime影片、MPEG影片;,标签。以尖括号括出的成对或单个标签给出页面编排信息。文档编排、引用描述:一个HTML文档文档简介信息文档内容标题链接名第i层编排此前为一段由此换行产生一个视窗宽度的水平分行符,字符格式逻辑描述:已定义单词重点词书或电影主题一段源代码由此键入状态信息特别强调物理描述:此处黑体此处斜体此处打字机体,内联图形其它标签列表:表项表项(无号)(有号)表项测试此表表项(定义表)预定义格式正文:此段文本格式已定作者地址:,扩展引用:嵌入Java:嵌入其它描述语言:,15.2.2JavaScript语言,HTML语言是静态的,动态性和交互性不强。于是,Netscape公司开发了JavaScript(与之对应是Microsoft公司的VBScript),扩充HTML文档的功能。Javascript嵌入在HTML文本中,由浏览器解释执行。,以下是一个HTML文本中嵌入JavaScript的例子:functionwelcome()vars=“Helloworld!”;document.write(s);/document是HTML文档对象/函数的定义welcome()/函数的调用,这个例子将在浏览器中显示“Helloworld!”字符串。“document”是HTML文档对象,使用它的write方法可以在文档中写入文本。,JavaScript有以下特点:与C、Java相似的语法,如常规的变量、表达式、函数和控制语句等。弱类型。有数字、布尔、字符串和空值类型。变量的确切类型取决于所赋给它数据的类型。基于对象。把浏览器和HTML文档中的元素看作对象,对象有各自的属性。例如,浏览器对象是已被预定义的Navigator;HTML页面是document对象。程序员可以使用的对象及其属性是已经被浏览器定义和生成的,不能定义新的类和对象。因此,是基于对象而不是面向对象的。事件驱动。定义了一组系统、鼠标事件。可以通过事件激活定义好的函数。在客户端使用的小语言,一个统计HTML文档中超链接个数的程序:for(vari=0;i);document.write(Thereare+document.links.length+links.);其中,document是整个HTML页面对象;links是document对象中的超链接对象数组,length、href又是links的属性,分别表示链接的数目、链接的内容,该HTML在浏览器中的显示如下图所示:,15.3Java语言15.3.1Java是C+的网络应用的扩充和改造,保留了高级语言的主要机制与C+基本相同的字符集、标识符、关键字、运算符、特殊符号比C+更加强化类型。增加了布尔类型,只保留数组类型;使用真正的类型转换(C+中的类型转换是“伪”的,目的是为了通过编译器的检查;Java中的类型转换在运行时真正发生,如果不能转换,系统会抛出异常)保留声明、作用域、变量、表达式、语句、三种结构化控制;保留并增强C+的异常;,与C+相似的面向对象机制:类作为特殊类型、构造函数、初始化序列、实

温馨提示

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

评论

0/150

提交评论