第09章平台无关语言 使用平台无关语言的需求 脚本语言 Java语言
第09章 平台无关语言 • 使用平台无关语言的需求 • 脚本语言 • Java语言
91使用平台无关语言的需求 高级程序设计语言本应是平台无关的 在高级语言中,数据、控制流等都是抽象的。 源程序经过编译生成的目标码是与本地机紧密相关 的。表现在: 基本类型定义与及其字长相关; ·各机指令集不一,操作效果相当,实现过程有微小的差别: 同一语言在相同编译和执行环境下,同一程序执行速度不 (硬件差异,优化次数); 已采用增加可移植手段。 设预定义环境(包)—Ada 分出头文件-宏-编译文件C
9.1 使用平台无关语言的需求 • 高级程序设计语言本应是平台无关的 – 在高级语言中,数据、控制流等都是抽象的。 – 源程序经过编译生成的目标码是与本地机紧密相关 的。表现在: • 基本类型定义与及其字长相关; • 各机指令集不一,操作效果相当,实现过程有微小的差别; • 同一语言在相同编译和执行环境下,同一程序执行速度不 一(硬件差异,优化次数); – 已采用增加可移植手段。 • 设预定义环境(包)——Ada; • 分出头文件 - 宏 - 编译文件——C;
单主机时代,需要解决的主要问题是高 级语言程序可移植性,以减少应用程序 的开发费用,缩短开发周期。这时对平 台无关性的要求不是十分迫切
• 单主机时代,需要解决的主要问题是高 级语言程序可移植性,以减少应用程序 的开发费用,缩短开发周期。这时对平 台无关性的要求不是十分迫切
局域网时代,需要在局域网内实现信息 共享,有协作计算需求。 网络协议栈实现了数据的平台无关; 以文件共享形式实现; 客户/服务器模式,程序可以不共享 只要局域网内使用相同或相互兼容的平台, 也可以实现程序的共享
• 局域网时代,需要在局域网内实现信息 共享,有协作计算需求。 – 网络协议栈实现了数据的平台无关; – 以文件共享形式实现; – 客户/服务器模式,程序可以不共享; – 只要局域网内使用相同或相互兼容的平台, 也可以实现程序的共享
Internet时代,对资源共享提出了新的要求: 局域网的规模和结构是可控制的;但是,没有任何个人 和机构可以控制 Internet的构成。 Internet/ nt ranet'包含各 种类型计算机,是资源共享的平台。不论用户使用的是 什么类型的计算机和操作系统,都可以浏览网络上的信 息,使用网络中的资源。 WWW( World wide Web)是 Internet上最广泛的信息发布 浏览方式。与FTP等以往的方式相比较,WWW具有较强 的动态性和交互性,需要完成复杂的应用(如电子商务 等)因此,共享资源不但包括数据,也应包括程序。这 就需要一种平台无关的语言。 激烈的竞争迫使软件生产者不断降低开发成本,缩短开 发周期。平台无关语言使开发者不需要为一个软件开发 多个操作系统的版本,减少了开发费用和时间
• Internet时代,对资源共享提出了新的要求: – 局域网的规模和结构是可控制的;但是,没有任何个人 和机构可以控制Internet的构成。 Internet/Intranet包含各 种类型计算机,是资源共享的平台。不论用户使用的是 什么类型的计算机和操作系统,都可以浏览网络上的信 息,使用网络中的资源。 – WWW(World Wide Web)是Internet上最广泛的信息发布/ 浏览方式。与FTP等以往的方式相比较,WWW具有较强 的动态性和交互性,需要完成复杂的应用(如电子商务 等)因此,共享资源不但包括数据,也应包括程序。这 就需要一种平台无关的语言。 – 激烈的竞争迫使软件生产者不断降低开发成本,缩短开 发周期。平台无关语言使开发者不需要为一个软件开发 多个操作系统的版本,减少了开发费用和时间